@gracile/engine 0.6.0-next.1 → 0.7.0-next.0
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/build/static.d.ts +8 -2
- package/dist/build/static.d.ts.map +1 -1
- package/dist/build/static.js +32 -7
- package/dist/dev/dev.d.ts +4 -1
- package/dist/dev/dev.d.ts.map +1 -1
- package/dist/dev/dev.js +12 -6
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +51 -40
- package/dist/render/markers.d.ts +3 -0
- package/dist/render/markers.d.ts.map +1 -0
- package/dist/render/markers.js +4 -0
- package/dist/render/route-template.d.ts +5 -10
- package/dist/render/route-template.d.ts.map +1 -1
- package/dist/render/route-template.js +32 -40
- package/dist/render/utils.d.ts +24 -1
- package/dist/render/utils.d.ts.map +1 -1
- package/dist/render/utils.js +23 -1
- package/dist/routes/collect.d.ts +1 -1
- package/dist/routes/collect.d.ts.map +1 -1
- package/dist/routes/collect.js +2 -2
- package/dist/routes/match.js +3 -3
- package/dist/routes/route.d.ts +1 -1
- package/dist/routes/route.d.ts.map +1 -1
- package/dist/server/adapters/hono.js +3 -3
- package/dist/server/adapters/node.d.ts.map +1 -1
- package/dist/server/adapters/node.js +3 -3
- package/dist/server/constants.d.ts +1 -1
- package/dist/server/constants.d.ts.map +1 -1
- package/dist/server/constants.js +1 -1
- package/dist/server/request.d.ts +3 -1
- package/dist/server/request.d.ts.map +1 -1
- package/dist/server/request.js +55 -31
- package/dist/server/utils.js +3 -3
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/user-config.d.ts +35 -1
- package/dist/user-config.d.ts.map +1 -1
- package/dist/vite/plugins/build-routes.d.ts +6 -2
- package/dist/vite/plugins/build-routes.d.ts.map +1 -1
- package/dist/vite/plugins/build-routes.js +67 -35
- package/dist/vite/plugins/virtual-routes.d.ts +10 -0
- package/dist/vite/plugins/virtual-routes.d.ts.map +1 -1
- package/dist/vite/plugins/virtual-routes.js +54 -3
- package/package.json +9 -11
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createFilter } from 'vite';
|
|
1
2
|
export function virtualRoutes({
|
|
2
3
|
// root,
|
|
3
4
|
routes, renderedRoutes, }) {
|
|
@@ -26,16 +27,20 @@ routes, renderedRoutes, }) {
|
|
|
26
27
|
return `
|
|
27
28
|
import { URLPattern } from '@gracile/gracile/url-pattern';
|
|
28
29
|
|
|
29
|
-
const routes = new Map(${
|
|
30
|
+
const routes = new Map(${
|
|
31
|
+
//
|
|
32
|
+
JSON.stringify(routesWithoutPrerender, null, 2).replaceAll(
|
|
33
|
+
// NOTE: Not strictly necessary, but just in case.
|
|
34
|
+
'"pattern": {}', '"pattern": null')})
|
|
30
35
|
routes.forEach((route, pattern) => {
|
|
31
36
|
route.pattern = new URLPattern(pattern, 'http://gracile');
|
|
32
37
|
});
|
|
33
38
|
|
|
34
39
|
const routeImports = new Map(
|
|
35
40
|
[
|
|
36
|
-
|
|
41
|
+
${routesWithoutPrerender
|
|
37
42
|
.map(([pattern, route]) => `['${pattern}', () => import('/${route.filePath}')],`)
|
|
38
|
-
.join('\n')}
|
|
43
|
+
.join('\n ')}
|
|
39
44
|
]
|
|
40
45
|
);
|
|
41
46
|
|
|
@@ -57,3 +62,49 @@ export { routes, routeImports, routeAssets };
|
|
|
57
62
|
},
|
|
58
63
|
];
|
|
59
64
|
}
|
|
65
|
+
// TODO: move to CSR package?
|
|
66
|
+
// It's very tiny and can act as a stub.
|
|
67
|
+
// Could be documented for user, too? For allowing custom implementations.
|
|
68
|
+
export function virtualRoutesClient({ routes: routesMap, mode = 'server', gracileConfig, }) {
|
|
69
|
+
const virtualModuleId = 'gracile:client:routes';
|
|
70
|
+
const resolvedVirtualModuleId = `\0${virtualModuleId}`;
|
|
71
|
+
const enabled = gracileConfig.pages?.premises?.expose;
|
|
72
|
+
const premisesFilter = createFilter(gracileConfig.pages?.premises?.include, gracileConfig.pages?.premises?.exclude);
|
|
73
|
+
return [
|
|
74
|
+
{
|
|
75
|
+
name: 'gracile-client-routes',
|
|
76
|
+
// TODO: Proper invalidation!
|
|
77
|
+
resolveId(id) {
|
|
78
|
+
if (id === virtualModuleId) {
|
|
79
|
+
return resolvedVirtualModuleId;
|
|
80
|
+
}
|
|
81
|
+
return null;
|
|
82
|
+
},
|
|
83
|
+
load(id) {
|
|
84
|
+
if (id === resolvedVirtualModuleId) {
|
|
85
|
+
if (!routesMap || routesMap.size < 1)
|
|
86
|
+
return '';
|
|
87
|
+
const routes = [...routesMap].filter((r) => premisesFilter(r[1].filePath));
|
|
88
|
+
return `
|
|
89
|
+
const routeImports = new Map(
|
|
90
|
+
[
|
|
91
|
+
${enabled
|
|
92
|
+
? routes
|
|
93
|
+
.map(([pattern, route]) => `['${pattern}', () => import('/${route.filePath}')],`)
|
|
94
|
+
.join('\n ')
|
|
95
|
+
: '/* DISABLED */'}
|
|
96
|
+
]
|
|
97
|
+
);
|
|
98
|
+
|
|
99
|
+
export const enabled = ${enabled};
|
|
100
|
+
|
|
101
|
+
export const mode = '${mode}';
|
|
102
|
+
|
|
103
|
+
export { routeImports };
|
|
104
|
+
`;
|
|
105
|
+
}
|
|
106
|
+
return null;
|
|
107
|
+
},
|
|
108
|
+
},
|
|
109
|
+
];
|
|
110
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gracile/engine",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0-next.0",
|
|
4
4
|
"description": "A thin, full-stack, web framework",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"custom-elements",
|
|
@@ -29,13 +29,11 @@
|
|
|
29
29
|
"exports": {
|
|
30
30
|
".": "./dist/index.js",
|
|
31
31
|
"./*": "./dist/*.js",
|
|
32
|
-
"./ambient":
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
"
|
|
37
|
-
"development": "./dist/dev/server.js",
|
|
38
|
-
"default": "./dist/server/server.js"
|
|
32
|
+
"./ambient": "./ambient.d.ts",
|
|
33
|
+
"./server/*": {
|
|
34
|
+
"types": "./dist/server/*.js",
|
|
35
|
+
"development": "./dist/server/*.js",
|
|
36
|
+
"default": "./dist/server/*.js"
|
|
39
37
|
}
|
|
40
38
|
},
|
|
41
39
|
"files": [
|
|
@@ -45,8 +43,8 @@
|
|
|
45
43
|
"!/dist/typedoc-entrypoint.*"
|
|
46
44
|
],
|
|
47
45
|
"dependencies": {
|
|
48
|
-
"@gracile/client": "^0.3.1
|
|
49
|
-
"@gracile/internal-utils": "^0.3.1
|
|
46
|
+
"@gracile/client": "^0.3.1",
|
|
47
|
+
"@gracile/internal-utils": "^0.3.1",
|
|
50
48
|
"@whatwg-node/server": "^0.9.25",
|
|
51
49
|
"fdir": "^6.2.0",
|
|
52
50
|
"picocolors": "^1.0.0",
|
|
@@ -75,5 +73,5 @@
|
|
|
75
73
|
"vite-plugin-standard-css-modules": "^0.0.10",
|
|
76
74
|
"vite-plugin-web-components-hmr-local": "link:../../../../../__forks/vite-plugin-web-components-hmr/packages/dev-server-hmr"
|
|
77
75
|
},
|
|
78
|
-
"gitHead": "
|
|
76
|
+
"gitHead": "ed69f4d4d482a43fdb12bc0a02f12093337d91c7"
|
|
79
77
|
}
|