@monkeyplus/flow 5.0.0-beta.11 → 5.0.0-beta.2
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/core/runtime/nitro/renderer.mjs +2 -2
- package/dist/index.mjs +8 -20
- package/package.json +6 -5
- package/src/core/builder.ts +1 -2
- package/src/core/runtime/nitro/renderer.ts +1 -3
- package/src/core/vite/builder/index.ts +0 -4
- package/src/core/vite/builder/server.ts +0 -1
- package/src/core/vite/client/index.ts +1 -8
- package/src/pages/utils.ts +2 -2
- package/src/vite-client/module.ts +4 -15
|
@@ -10,12 +10,12 @@ export default eventHandler(async (event) => {
|
|
|
10
10
|
const chunks = { head: [], body: [] };
|
|
11
11
|
const generate = {};
|
|
12
12
|
const { page, locale, params, view } = flow.router.byUrl.lookup(url) || {};
|
|
13
|
-
if (!page)
|
|
14
|
-
return;
|
|
15
13
|
await flow.callHook("page:scripts", scripts);
|
|
16
14
|
if (view.bundle)
|
|
17
15
|
await flow.callHook("page:chunks", view.bundle, chunks);
|
|
18
16
|
const templateContext = {};
|
|
17
|
+
if (!page)
|
|
18
|
+
return;
|
|
19
19
|
const dynamyc = params?._;
|
|
20
20
|
const contextPage = {};
|
|
21
21
|
const utils = Object.assign({ getLocale: () => locale }, flow.app.utils);
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createHooks } from 'hookable';
|
|
2
2
|
import { dirname, resolve, normalize, join, isAbsolute, relative, extname } from 'pathe';
|
|
3
|
-
import { defineFlowModule, addPlugin, defineNuxtModule, logger, addTemplate, addPluginTemplate, addVitePlugin, useNuxt, resolveAlias,
|
|
3
|
+
import { defineFlowModule, addPlugin, defineNuxtModule, logger, addTemplate, addPluginTemplate, addVitePlugin, useNuxt, resolveAlias, resolveFiles, addDevServerHandler, nuxtCtx, installModule, loadFlowConfig, templateUtils, normalizeTemplate, compileTemplate, normalizePlugin, resolveFilesFlow, isIgnoredFlow } from '@monkeyplus/flow-kit';
|
|
4
4
|
import { fileURLToPath, pathToFileURL } from 'node:url';
|
|
5
5
|
import { defineUnimportPreset, createUnimport, toImports, scanDirExports } from 'unimport';
|
|
6
6
|
import { createUnplugin } from 'unplugin';
|
|
@@ -27,7 +27,7 @@ import { isExternal as isExternal$1, ExternalsDefaults } from 'externality';
|
|
|
27
27
|
import { createHash } from 'node:crypto';
|
|
28
28
|
import MagicString from 'magic-string';
|
|
29
29
|
|
|
30
|
-
const version = "5.0.0-beta.
|
|
30
|
+
const version = "5.0.0-beta.2";
|
|
31
31
|
|
|
32
32
|
let _distDir = dirname(fileURLToPath(import.meta.url));
|
|
33
33
|
if (_distDir.endsWith("chunks"))
|
|
@@ -225,7 +225,7 @@ async function resolvePagesRoutes() {
|
|
|
225
225
|
const nuxt = useNuxt();
|
|
226
226
|
const pagesDirs = [...new Set(nuxt.options._layers.map((layer) => resolve(layer.config.srcDir, layer.config.dir?.pages || "pages")))];
|
|
227
227
|
const allRoutes = (await Promise.all(pagesDirs.map(async (dir) => {
|
|
228
|
-
const files = await
|
|
228
|
+
const files = await resolveFiles(dir, `**/*{${nuxt.options.extensions.join(",")}}`);
|
|
229
229
|
files.sort();
|
|
230
230
|
return files.map((file) => {
|
|
231
231
|
const segments = relative(dir, file).replace(new RegExp(`${escapeRE(extname(file))}$`), "").split("/").join("_");
|
|
@@ -306,15 +306,11 @@ const createClient = async (flow) => {
|
|
|
306
306
|
manifest: true
|
|
307
307
|
},
|
|
308
308
|
server: {
|
|
309
|
-
watch: {
|
|
310
|
-
ignored: ["**/.env/**", "**/.env*"]
|
|
311
|
-
},
|
|
312
309
|
middlewareMode: "ssr"
|
|
313
310
|
}
|
|
314
311
|
});
|
|
315
312
|
const _doReload = () => {
|
|
316
|
-
|
|
317
|
-
vite?.ws?.send({ type: "full-reload" });
|
|
313
|
+
vite.ws.send({ type: "full-reload" });
|
|
318
314
|
};
|
|
319
315
|
const doReload = debounce(_doReload, 50);
|
|
320
316
|
flow.hook("bundler:change", () => {
|
|
@@ -348,14 +344,11 @@ const viteModule = defineFlowModule({
|
|
|
348
344
|
async setup(_options, flow) {
|
|
349
345
|
const runtimeDir = resolve(distDir, "vite-client/runtime");
|
|
350
346
|
flow.options.alias["#viteManifest"] = resolve(flow.options.buildDir, "viteManifest.mjs");
|
|
351
|
-
let vite;
|
|
352
347
|
if (flow.options.dev) {
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
route: _options.route
|
|
358
|
-
});
|
|
348
|
+
const _vite = await createClient(flow);
|
|
349
|
+
addDevServerHandler({
|
|
350
|
+
handler: _vite.middlewares,
|
|
351
|
+
route: _options.route
|
|
359
352
|
});
|
|
360
353
|
addTemplate({
|
|
361
354
|
filename: "viteManifest.mjs",
|
|
@@ -1073,7 +1066,6 @@ const buildServer = async (ctx) => {
|
|
|
1073
1066
|
"/__vue-jsx",
|
|
1074
1067
|
"#app",
|
|
1075
1068
|
/(nuxt|nuxt3)\/(dist|src|app)/,
|
|
1076
|
-
/@monkeyplus\/flow\/(dist|src|app)/,
|
|
1077
1069
|
/@nuxt\/nitro\/(dist|src)/
|
|
1078
1070
|
]
|
|
1079
1071
|
},
|
|
@@ -1255,7 +1247,6 @@ async function bundleVite(flow) {
|
|
|
1255
1247
|
nuxt: flow,
|
|
1256
1248
|
flow,
|
|
1257
1249
|
config: vite.mergeConfig({
|
|
1258
|
-
mode: flow.options.dev ? "development" : void 0,
|
|
1259
1250
|
resolve: {
|
|
1260
1251
|
alias: {
|
|
1261
1252
|
...flow.options.alias,
|
|
@@ -1302,8 +1293,6 @@ async function bundleVite(flow) {
|
|
|
1302
1293
|
}
|
|
1303
1294
|
}, flow.options.vite)
|
|
1304
1295
|
};
|
|
1305
|
-
if (flow.options.dev)
|
|
1306
|
-
ctx.config.mode = process.env.NODE_ENV || "development";
|
|
1307
1296
|
await flow.callHook("vite:extend", ctx);
|
|
1308
1297
|
flow.hook("vite:serverCreated", (server) => {
|
|
1309
1298
|
ctx.nuxt.hook("app:templatesGenerated", () => {
|
|
@@ -1344,7 +1333,6 @@ function watch(flow) {
|
|
|
1344
1333
|
cwd: flow.options.srcDir,
|
|
1345
1334
|
ignoreInitial: true,
|
|
1346
1335
|
ignored: [
|
|
1347
|
-
isIgnoredFlow,
|
|
1348
1336
|
".flow",
|
|
1349
1337
|
"node_modules"
|
|
1350
1338
|
]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@monkeyplus/flow",
|
|
3
|
-
"version": "5.0.0-beta.
|
|
3
|
+
"version": "5.0.0-beta.2",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -14,9 +14,10 @@
|
|
|
14
14
|
"flow": "./bin/flow.mjs"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@monkeyplus/flow-cli": "5.0.0-beta.
|
|
18
|
-
"@monkeyplus/flow-kit": "5.0.0-beta.
|
|
19
|
-
"@monkeyplus/flow-schema": "5.0.0-beta.
|
|
17
|
+
"@monkeyplus/flow-cli": "5.0.0-beta.2",
|
|
18
|
+
"@monkeyplus/flow-kit": "5.0.0-beta.2",
|
|
19
|
+
"@monkeyplus/flow-schema": "5.0.0-beta.2",
|
|
20
|
+
"@nuxt/vite-builder": "3.0.0-rc.1",
|
|
20
21
|
"@rollup/plugin-replace": "^4.0.0",
|
|
21
22
|
"@vueuse/head": "^0.7.6",
|
|
22
23
|
"c12": "^0.2.7",
|
|
@@ -55,7 +56,7 @@
|
|
|
55
56
|
"unplugin": "^0.6.3",
|
|
56
57
|
"untyped": "^0.4.4",
|
|
57
58
|
"vite": "^2.9.9",
|
|
58
|
-
"vue": "^3
|
|
59
|
+
"vue": "^3"
|
|
59
60
|
},
|
|
60
61
|
"devDependencies": {
|
|
61
62
|
"@types/fs-extra": "^9.0.13"
|
package/src/core/builder.ts
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { normalize } from 'pathe';
|
|
2
2
|
import chokidar from 'chokidar';
|
|
3
3
|
import type { Flow } from '@monkeyplus/flow-schema';
|
|
4
|
-
import { isIgnoredFlow } from '@monkeyplus/flow-kit';
|
|
5
4
|
import { debounce } from 'perfect-debounce';
|
|
6
5
|
import { generateApp as _generateApp, createApp } from './app';
|
|
7
6
|
|
|
@@ -37,7 +36,7 @@ function watch(flow: Flow) {
|
|
|
37
36
|
cwd: flow.options.srcDir,
|
|
38
37
|
ignoreInitial: true,
|
|
39
38
|
ignored: [
|
|
40
|
-
|
|
39
|
+
// isIgnored,
|
|
41
40
|
'.flow',
|
|
42
41
|
'node_modules',
|
|
43
42
|
],
|
|
@@ -17,14 +17,12 @@ export default eventHandler(async(event) => {
|
|
|
17
17
|
|
|
18
18
|
// console.log(flow);
|
|
19
19
|
const { page, locale, params, view } = flow.router.byUrl.lookup(url!) || {};
|
|
20
|
-
// Truncate page
|
|
21
|
-
if (!page) return;
|
|
22
|
-
|
|
23
20
|
await flow.callHook('page:scripts', scripts);
|
|
24
21
|
if (view.bundle)
|
|
25
22
|
await flow.callHook('page:chunks', view.bundle, chunks);
|
|
26
23
|
|
|
27
24
|
const templateContext = {} as any;
|
|
25
|
+
if (!page) return;
|
|
28
26
|
|
|
29
27
|
const dynamyc = params?._;
|
|
30
28
|
const contextPage = {} as any;
|
|
@@ -22,7 +22,6 @@ export async function bundleVite(flow: Flow) {
|
|
|
22
22
|
nuxt: flow,
|
|
23
23
|
flow,
|
|
24
24
|
config: vite.mergeConfig({
|
|
25
|
-
mode: flow.options.dev ? 'development' : undefined,
|
|
26
25
|
resolve: {
|
|
27
26
|
alias: {
|
|
28
27
|
...flow.options.alias,
|
|
@@ -72,9 +71,6 @@ export async function bundleVite(flow: Flow) {
|
|
|
72
71
|
},
|
|
73
72
|
}, flow.options.vite),
|
|
74
73
|
};
|
|
75
|
-
if (flow.options.dev)
|
|
76
|
-
ctx.config.mode = process.env.NODE_ENV || 'development';
|
|
77
|
-
|
|
78
74
|
await flow.callHook('vite:extend', ctx);
|
|
79
75
|
|
|
80
76
|
flow.hook('vite:serverCreated', (server: vite.ViteDevServer) => {
|
|
@@ -7,22 +7,15 @@ export const createClient = async(flow: Flow) => {
|
|
|
7
7
|
const vite = await createServer({
|
|
8
8
|
root: resolve(flow.options.rootDir),
|
|
9
9
|
base: '/_vite/',
|
|
10
|
-
|
|
11
10
|
build: {
|
|
12
|
-
|
|
13
11
|
manifest: true,
|
|
14
12
|
},
|
|
15
13
|
server: {
|
|
16
|
-
watch: {
|
|
17
|
-
ignored: ['**/.env/**', '**/.env*'],
|
|
18
|
-
},
|
|
19
14
|
middlewareMode: 'ssr',
|
|
20
|
-
//
|
|
21
15
|
},
|
|
22
16
|
});
|
|
23
17
|
const _doReload = () => {
|
|
24
|
-
|
|
25
|
-
vite?.ws?.send({ type: 'full-reload' });
|
|
18
|
+
vite.ws.send({ type: 'full-reload' });
|
|
26
19
|
};
|
|
27
20
|
|
|
28
21
|
const doReload = debounce(_doReload, 50);
|
package/src/pages/utils.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { resolveFiles, useNuxt } from '@monkeyplus/flow-kit';
|
|
3
3
|
import { extname, relative, resolve } from 'pathe';
|
|
4
4
|
import escapeRE from 'escape-string-regexp';
|
|
5
5
|
import { camelCase } from 'scule';
|
|
@@ -17,7 +17,7 @@ export async function resolvePagesRoutes(): Promise<Pages[]> {
|
|
|
17
17
|
|
|
18
18
|
const allRoutes: Pages[] = (await Promise.all(
|
|
19
19
|
pagesDirs.map(async(dir) => {
|
|
20
|
-
const files = await
|
|
20
|
+
const files = await resolveFiles(dir, `**/*{${nuxt.options.extensions.join(',')}}`);
|
|
21
21
|
|
|
22
22
|
// Sort to make sure parent are listed first
|
|
23
23
|
|
|
@@ -22,23 +22,12 @@ export default defineFlowModule<OptionsViteClient>({
|
|
|
22
22
|
const runtimeDir = resolve(distDir, 'vite-client/runtime');
|
|
23
23
|
flow.options.alias['#viteManifest'] = resolve(flow.options.buildDir, 'viteManifest.mjs');
|
|
24
24
|
|
|
25
|
-
let vite: any;
|
|
26
25
|
if (flow.options.dev) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
handler: vite.middlewares,
|
|
32
|
-
route: _options.route,
|
|
33
|
-
});
|
|
26
|
+
const _vite = await createClient(flow);
|
|
27
|
+
addDevServerHandler({
|
|
28
|
+
handler: _vite.middlewares,
|
|
29
|
+
route: _options.route,
|
|
34
30
|
});
|
|
35
|
-
// addDevServerHandler({
|
|
36
|
-
// route: _options.route,
|
|
37
|
-
// handler: async(req, res) => {
|
|
38
|
-
// return await vite.middlewares(req, res);
|
|
39
|
-
// },
|
|
40
|
-
// });
|
|
41
|
-
|
|
42
31
|
addTemplate({
|
|
43
32
|
filename: 'viteManifest.mjs',
|
|
44
33
|
async getContents() {
|