create-avalon 0.1.11 → 0.1.13
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/cli.js +29 -3
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -1287,16 +1287,25 @@ function generateTsConfig() {
|
|
|
1287
1287
|
allowImportingTsExtensions: true,
|
|
1288
1288
|
noEmit: true,
|
|
1289
1289
|
jsx: "react-jsx",
|
|
1290
|
-
types: ["@useavalon/avalon/types"],
|
|
1291
1290
|
paths: {
|
|
1292
1291
|
"@shared/*": ["./app/shared/*"],
|
|
1293
1292
|
"@modules/*": ["./app/modules/*"]
|
|
1294
1293
|
}
|
|
1295
1294
|
},
|
|
1296
|
-
include: ["app/**/*.ts", "app/**/*.tsx", "server/**/*.ts", "routes/**/*.ts", "middleware/**/*.ts"]
|
|
1295
|
+
include: ["app/**/*.ts", "app/**/*.tsx", "app/**/*.d.ts", "server/**/*.ts", "routes/**/*.ts", "middleware/**/*.ts"]
|
|
1297
1296
|
};
|
|
1298
1297
|
return JSON.stringify(tsconfig, null, 2);
|
|
1299
1298
|
}
|
|
1299
|
+
function generateEnvDts() {
|
|
1300
|
+
return `/// <reference types="@useavalon/avalon/types" />
|
|
1301
|
+
|
|
1302
|
+
// Virtual module declarations
|
|
1303
|
+
declare module 'virtual:avalon/config' {
|
|
1304
|
+
const config: Record<string, unknown>;
|
|
1305
|
+
export default config;
|
|
1306
|
+
}
|
|
1307
|
+
`;
|
|
1308
|
+
}
|
|
1300
1309
|
|
|
1301
1310
|
// src/templates/vite-config.ts
|
|
1302
1311
|
function generateViteConfig(config) {
|
|
@@ -1471,7 +1480,7 @@ function generateSampleMiddleware(_config) {
|
|
|
1471
1480
|
return `import { defineHandler } from 'nitro';
|
|
1472
1481
|
|
|
1473
1482
|
export default defineHandler((event) => {
|
|
1474
|
-
console.log(\`[\${new Date().toISOString()}] \${event.method} \${event.
|
|
1483
|
+
console.log(\`[\${new Date().toISOString()}] \${event.req.method} \${event.url.pathname}\`);
|
|
1475
1484
|
});
|
|
1476
1485
|
`;
|
|
1477
1486
|
}
|
|
@@ -1750,6 +1759,7 @@ async function scaffoldProject(config, targetDir) {
|
|
|
1750
1759
|
await writeFile(join(targetDir, "public/favicon.ico"), getFaviconBuffer());
|
|
1751
1760
|
await writeFile(join(targetDir, "server/env.d.ts"), `/// <reference types="nitro" />
|
|
1752
1761
|
`);
|
|
1762
|
+
await writeFile(join(targetDir, "app/env.d.ts"), generateEnvDts());
|
|
1753
1763
|
await writeFile(join(targetDir, "server/renderer.ts"), [
|
|
1754
1764
|
`import { createNitroRenderer } from '@useavalon/avalon/nitro/renderer';`,
|
|
1755
1765
|
`import avalonConfig from 'virtual:avalon/config';`,
|
|
@@ -1760,6 +1770,22 @@ async function scaffoldProject(config, targetDir) {
|
|
|
1760
1770
|
`});`,
|
|
1761
1771
|
``
|
|
1762
1772
|
].join(`
|
|
1773
|
+
`));
|
|
1774
|
+
await writeFile(join(targetDir, "index.html"), [
|
|
1775
|
+
`<!DOCTYPE html>`,
|
|
1776
|
+
`<html lang="en">`,
|
|
1777
|
+
` <head>`,
|
|
1778
|
+
` <meta charset="utf-8" />`,
|
|
1779
|
+
` <meta name="viewport" content="width=device-width, initial-scale=1" />`,
|
|
1780
|
+
` <title>Avalon</title>`,
|
|
1781
|
+
` </head>`,
|
|
1782
|
+
` <body>`,
|
|
1783
|
+
` <!--ssr-outlet-->`,
|
|
1784
|
+
` <script type="module" src="/src/client/main.js"></script>`,
|
|
1785
|
+
` </body>`,
|
|
1786
|
+
`</html>`,
|
|
1787
|
+
``
|
|
1788
|
+
].join(`
|
|
1763
1789
|
`));
|
|
1764
1790
|
}
|
|
1765
1791
|
|