rasengan 1.0.0-beta.49 → 1.0.0-beta.50
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/lib/esm/routing/utils/define-router.js +17 -8
- package/lib/tsconfig.esm.tsbuildinfo +1 -1
- package/lib/tsconfig.types.tsbuildinfo +1 -1
- package/lib/types/core/types.d.ts +7 -0
- package/lib/types/routing/types.d.ts +31 -0
- package/lib/types/routing/utils/define-router.d.ts +2 -2
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
2
|
import { DefaultLayout } from "../../core/components/index.js";
|
|
2
3
|
import { NotFoundPageComponent } from "../components/index.js";
|
|
3
4
|
/**
|
|
@@ -6,7 +7,7 @@ import { NotFoundPageComponent } from "../components/index.js";
|
|
|
6
7
|
* @returns
|
|
7
8
|
*/
|
|
8
9
|
export var defineRouter = function (option) {
|
|
9
|
-
var imports = option.imports, layout = option.layout, pages = option.pages, loaderComponent = option.loaderComponent, notFoundComponent = option.notFoundComponent;
|
|
10
|
+
var imports = option.imports, layout = option.layout, pages = option.pages, loaderComponent = option.loaderComponent, notFoundComponent = option.notFoundComponent, MDXRenderer = option.MDXRenderer;
|
|
10
11
|
return function (Component) {
|
|
11
12
|
// Handle errors
|
|
12
13
|
if (!option.pages)
|
|
@@ -15,19 +16,27 @@ export var defineRouter = function (option) {
|
|
|
15
16
|
var router = new Component();
|
|
16
17
|
// Normalize pages
|
|
17
18
|
var normalizedPages = [];
|
|
18
|
-
|
|
19
|
-
var p = pages_1[_i];
|
|
19
|
+
var _loop_1 = function (p) {
|
|
20
20
|
// When p is a MDXPageComponent
|
|
21
21
|
if (!p["path"]) {
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
if (!MDXRenderer) {
|
|
23
|
+
throw new Error("You must provide a MDXRenderer component to render MDX pages");
|
|
24
|
+
}
|
|
25
|
+
var MDXPage_1 = p;
|
|
26
|
+
var Page = function () {
|
|
27
|
+
return _jsx(MDXRenderer, { className: "", children: MDXPage_1 });
|
|
28
|
+
};
|
|
29
|
+
Page.path = MDXPage_1.metadata.path;
|
|
30
|
+
Page.metadata = MDXPage_1.metadata.metadata;
|
|
31
|
+
normalizedPages.push(Page);
|
|
27
32
|
}
|
|
28
33
|
else {
|
|
29
34
|
normalizedPages.push(p);
|
|
30
35
|
}
|
|
36
|
+
};
|
|
37
|
+
for (var _i = 0, pages_1 = pages; _i < pages_1.length; _i++) {
|
|
38
|
+
var p = pages_1[_i];
|
|
39
|
+
_loop_1(p);
|
|
31
40
|
}
|
|
32
41
|
// Set properties
|
|
33
42
|
router.routers = imports || [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/index.ts","../src/cli/dirname.ts","../src/cli/index.ts","../src/config/index.ts","../src/config/type.ts","../src/config/utils/define-config.ts","../src/config/utils/index.ts","../src/config/utils/load-modules.ts","../src/config/utils/path.ts","../src/core/index.ts","../src/core/types.ts","../src/core/components/index.tsx","../src/decorators/index.ts","../src/decorators/route.ts","../src/decorators/router.ts","../src/decorators/types.ts","../src/entries/entry-client.tsx","../src/entries/entry-server-stream.tsx","../src/entries/entry-server.tsx","../src/hooks/index.ts","../src/routing/index.ts","../src/routing/interfaces.ts","../src/routing/types.ts","../src/routing/components/index.tsx","../src/routing/utils/define-router.
|
|
1
|
+
{"root":["../src/index.ts","../src/cli/dirname.ts","../src/cli/index.ts","../src/config/index.ts","../src/config/type.ts","../src/config/utils/define-config.ts","../src/config/utils/index.ts","../src/config/utils/load-modules.ts","../src/config/utils/path.ts","../src/core/index.ts","../src/core/types.ts","../src/core/components/index.tsx","../src/decorators/index.ts","../src/decorators/route.ts","../src/decorators/router.ts","../src/decorators/types.ts","../src/entries/entry-client.tsx","../src/entries/entry-server-stream.tsx","../src/entries/entry-server.tsx","../src/hooks/index.ts","../src/routing/index.ts","../src/routing/interfaces.ts","../src/routing/types.ts","../src/routing/components/index.tsx","../src/routing/utils/define-router.tsx","../src/routing/utils/generate-metadata.tsx","../src/routing/utils/generate-routes.tsx","../src/routing/utils/index.tsx","../src/scripts/copy-extra-files.js","../src/scripts/generate-package-json.js","../src/scripts/prepare-prod.js","../src/scripts/refresh-hack.js","../src/scripts/utils/check-os.js","../src/scripts/utils/copy.js","../src/server/functions/netlify/netlify/functions/api.ts","../src/server/functions/vercel/api/index.ts","../src/server/utils/createfetchrequest.ts","../src/server/utils/createreadablestream.ts","../src/server/utils/getip.ts","../src/server/utils/handleerror.ts","../src/server/utils/handlerequest.ts","../src/server/utils/index.ts","../src/server/utils/log.ts","../types/client.d.ts"],"version":"5.6.2"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["../src/index.ts","../src/cli/dirname.ts","../src/cli/index.ts","../src/config/index.ts","../src/config/type.ts","../src/config/utils/define-config.ts","../src/config/utils/index.ts","../src/config/utils/load-modules.ts","../src/config/utils/path.ts","../src/core/index.ts","../src/core/types.ts","../src/core/components/index.tsx","../src/decorators/index.ts","../src/decorators/route.ts","../src/decorators/router.ts","../src/decorators/types.ts","../src/entries/entry-client.tsx","../src/entries/entry-server-stream.tsx","../src/entries/entry-server.tsx","../src/hooks/index.ts","../src/routing/index.ts","../src/routing/interfaces.ts","../src/routing/types.ts","../src/routing/components/index.tsx","../src/routing/utils/define-router.
|
|
1
|
+
{"root":["../src/index.ts","../src/cli/dirname.ts","../src/cli/index.ts","../src/config/index.ts","../src/config/type.ts","../src/config/utils/define-config.ts","../src/config/utils/index.ts","../src/config/utils/load-modules.ts","../src/config/utils/path.ts","../src/core/index.ts","../src/core/types.ts","../src/core/components/index.tsx","../src/decorators/index.ts","../src/decorators/route.ts","../src/decorators/router.ts","../src/decorators/types.ts","../src/entries/entry-client.tsx","../src/entries/entry-server-stream.tsx","../src/entries/entry-server.tsx","../src/hooks/index.ts","../src/routing/index.ts","../src/routing/interfaces.ts","../src/routing/types.ts","../src/routing/components/index.tsx","../src/routing/utils/define-router.tsx","../src/routing/utils/generate-metadata.tsx","../src/routing/utils/generate-routes.tsx","../src/routing/utils/index.tsx","../src/scripts/copy-extra-files.js","../src/scripts/generate-package-json.js","../src/scripts/prepare-prod.js","../src/scripts/refresh-hack.js","../src/scripts/utils/check-os.js","../src/scripts/utils/copy.js","../src/server/functions/netlify/netlify/functions/api.ts","../src/server/functions/vercel/api/index.ts","../src/server/utils/createfetchrequest.ts","../src/server/utils/createreadablestream.ts","../src/server/utils/getip.ts","../src/server/utils/handleerror.ts","../src/server/utils/handlerequest.ts","../src/server/utils/index.ts","../src/server/utils/log.ts","../types/client.d.ts"],"version":"5.6.2"}
|
|
@@ -90,6 +90,13 @@ export type MDXPageComponent = React.FC<any> & {
|
|
|
90
90
|
metadata: Metadata;
|
|
91
91
|
};
|
|
92
92
|
};
|
|
93
|
+
/**
|
|
94
|
+
* A React functional component that represents a simple block element.
|
|
95
|
+
*/
|
|
96
|
+
export type MDXRendererProps = {
|
|
97
|
+
children: MDXPageComponent;
|
|
98
|
+
className?: string;
|
|
99
|
+
};
|
|
93
100
|
/**
|
|
94
101
|
* Helmet context type
|
|
95
102
|
*/
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { LayoutComponent, MDXPageComponent, MDXRendererProps, PageComponent } from "../core/types.js";
|
|
2
|
+
import { RouterComponent } from "./interfaces.js";
|
|
1
3
|
export type NotFoundComponentContainerProps = {
|
|
2
4
|
content: React.FC;
|
|
3
5
|
};
|
|
@@ -55,3 +57,32 @@ export type Metadata = MetadataWithoutTitleAndDescription & {
|
|
|
55
57
|
*/
|
|
56
58
|
description?: string;
|
|
57
59
|
};
|
|
60
|
+
/**
|
|
61
|
+
* Props for Router Decorators
|
|
62
|
+
*/
|
|
63
|
+
export type RouterProps = {
|
|
64
|
+
/**
|
|
65
|
+
* Usefull to collect sub routers
|
|
66
|
+
*/
|
|
67
|
+
imports?: Array<RouterComponent>;
|
|
68
|
+
/**
|
|
69
|
+
* Usefull to define a layout
|
|
70
|
+
*/
|
|
71
|
+
layout?: LayoutComponent;
|
|
72
|
+
/**
|
|
73
|
+
* Usefull to collect pages
|
|
74
|
+
*/
|
|
75
|
+
pages: Array<PageComponent | MDXPageComponent>;
|
|
76
|
+
/**
|
|
77
|
+
* Usefull to render MDX pages
|
|
78
|
+
*/
|
|
79
|
+
MDXRenderer?: React.FC<MDXRendererProps>;
|
|
80
|
+
/**
|
|
81
|
+
* Usefull to display a screen that let know to the user that the page is loading.
|
|
82
|
+
*/
|
|
83
|
+
loaderComponent?: React.FC;
|
|
84
|
+
/**
|
|
85
|
+
* Usefull to display a screen that let know to the user that the page is not found.
|
|
86
|
+
*/
|
|
87
|
+
notFoundComponent?: React.FC;
|
|
88
|
+
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RouterProps } from "../types.js";
|
|
2
2
|
import { RouterComponent } from "../interfaces.js";
|
|
3
3
|
/**
|
|
4
4
|
* This function adds metadata to a router
|
|
5
5
|
* @param option
|
|
6
6
|
* @returns
|
|
7
7
|
*/
|
|
8
|
-
export declare const defineRouter: (option:
|
|
8
|
+
export declare const defineRouter: (option: RouterProps) => (Component: new () => RouterComponent) => RouterComponent;
|