Skip to content

Commit bf61497

Browse files
committed
fix: 🐛 resolve path for projectFoler and cliFolder
1 parent ec156f1 commit bf61497

File tree

5 files changed

+17
-28
lines changed

5 files changed

+17
-28
lines changed

packages/cli/bin/merkur.mjs

-14
Original file line numberDiff line numberDiff line change
@@ -29,20 +29,6 @@ const verboseOption = new Option('--verbose', 'Verbose mode which show debug inf
2929
program
3030
.name('merkur')
3131
.description('CLI for Merkur framework.')
32-
// .option('--writeToDisk', 'Write built files to disk.')
33-
// .option('--sourcemap', 'Generate sourcemap.')
34-
// .option('--runTasks [runTasks...]', 'Run only defined tasks.')
35-
// .option('--outFile <string>', 'Server out file configuration in es-build.')
36-
// .option('--port <number>', 'Widget server port.')
37-
// .option('--devServerPort <number>', 'Dev server port.')
38-
// .option('--projectFolder <string>', 'Project folder.')
39-
// .option('--buildFolder <string>', 'Build folder.')
40-
// .option('--staticFolder <string>', 'Static folder.')
41-
// .option('--staticPath <string>', 'The static path for dev server and widget server.')
42-
// .option('--hasRunDevServer', 'Flag for starting dev server')
43-
// .option('--hasRunWidgetServer', 'Flag for starting widget server')
44-
// .option('--inspect', 'Debugging widget server')
45-
// .option('--verbose', 'Verbose mode which show debug information.')
4632
.version(packageFile.version);
4733

4834
program.command(COMMAND_NAME.DEV)

packages/cli/src/buildConfig.mjs

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { readdir } from 'node:fs/promises';
2+
import path from 'node:path';
23

34
import manifestPlugin from 'esbuild-plugin-manifest';
45

@@ -39,7 +40,7 @@ export async function createBuildConfig({
3940

4041
// Alias
4142
alias: {
42-
'@widget': `${projectFolder}/src/widget.js`,
43+
'@widget': path.resolve(`${projectFolder}/src/widget.js`),
4344
...definition.build.alias,
4445
},
4546

@@ -91,14 +92,14 @@ async function getEntries({ merkurConfig, cliConfig }) {
9192
};
9293

9394
try {
94-
const files = await readdir(`${cliConfig.projectFolder}/src/entries/`);
95+
const files = await readdir(path.resolve(`${cliConfig.projectFolder}/src/entries/`));
9596
const FILENAMES = ['client', 'server'];
9697

9798
files.forEach((file) => {
9899
FILENAMES.forEach((filename) => {
99100
if (file.startsWith(filename)) {
100101
entries[filename] = [
101-
`${cliConfig.projectFolder}/src/entries/${file}`,
102+
path.resolve(`${cliConfig.projectFolder}/src/entries/${file}`),
102103
];
103104
}
104105
});

packages/cli/src/devServer.mjs

+2-2
Original file line numberDiff line numberDiff line change
@@ -116,14 +116,14 @@ export async function runDevServer({ context, merkurConfig, cliConfig }) {
116116
}
117117

118118
const devClient = isDevCommand
119-
? fs.readFileSync(`${cliFolder}/../lib/devClient.mjs`, 'utf8')
119+
? fs.readFileSync(path.resolve(`${cliFolder}/../lib/devClient.mjs`), 'utf8')
120120
: '';
121121

122122
const playgroundTemplate = ejs.compile(
123123
fs.readFileSync(template, 'utf8'),
124124
{
125125
views: [
126-
`${projectFolder}/server/playground/templates/`,
126+
path.resolve(`${projectFolder}/server/playground/templates/`),
127127
path.dirname(template),
128128
templateFolder,
129129
],

packages/cli/src/merkurConfig.mjs

+9-8
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@ export async function createMerkurConfig({ cliConfig, context, args } = {}) {
1616

1717
try {
1818
logger.debug(
19-
`Load merkur config on path ${projectFolder}/${MERKUR_CONFIG_FILE}`,
19+
`Load merkur config on path ${path.resolve(`${projectFolder}/${MERKUR_CONFIG_FILE}`)}`,
2020
);
2121

22-
const file = await import(`${projectFolder}/${MERKUR_CONFIG_FILE}`);
22+
const file = await import(path.resolve(`${projectFolder}/${MERKUR_CONFIG_FILE}`));
2323
merkurConfig = await file.default({
2424
cliConfig,
2525
context,
@@ -28,6 +28,7 @@ export async function createMerkurConfig({ cliConfig, context, args } = {}) {
2828
});
2929
} catch (error) {
3030
logger.error(error);
31+
process.exit(1);
3132
}
3233

3334
cliConfig = { ...cliConfig, ...(merkurConfig?.cliConfig ?? {}), ...args };
@@ -101,7 +102,7 @@ emitter.on(
101102
folder: 'es13',
102103
build: {
103104
platform: 'browser',
104-
outdir: `${staticFolder}/es13`,
105+
outdir: path.resolve(`${staticFolder}/es13`),
105106
plugins: [devPlugin],
106107
},
107108
},
@@ -111,7 +112,7 @@ emitter.on(
111112
build: {
112113
platform: 'browser',
113114
target: 'es2018',
114-
outdir: `${staticFolder}/es9`,
115+
outdir: path.resolve(`${staticFolder}/es9`),
115116
},
116117
},
117118
};
@@ -172,8 +173,8 @@ emitter.on(
172173
EMITTER_EVENTS.MERKUR_CONFIG,
173174
function defaultEntries({ merkurConfig, cliConfig }) {
174175
merkurConfig.defaultEntries = {
175-
client: [`${cliConfig.projectFolder}/src/entries/client.js`],
176-
server: [`${cliConfig.projectFolder}/src/entries/server.js`],
176+
client: [path.resolve(`${cliConfig.projectFolder}/src/entries/client.js`)],
177+
server: [path.resolve(`${cliConfig.projectFolder}/src/entries/server.js`)],
177178
...merkurConfig.defaultEntries,
178179
};
179180

@@ -185,8 +186,8 @@ emitter.on(
185186
EMITTER_EVENTS.MERKUR_CONFIG,
186187
function playground({ merkurConfig, cliConfig }) {
187188
merkurConfig.playground = {
188-
template: `${cliConfig.cliFolder}/templates/playground.ejs`,
189-
templateFolder: `${cliConfig.cliFolder}/templates`,
189+
template: path.resolve(`${cliConfig.cliFolder}/templates/playground.ejs`),
190+
templateFolder: path.resolve(`${cliConfig.cliFolder}/templates`),
190191
path: '/',
191192
widgetHandler: async (req) => {
192193
const { protocol, host } = merkurConfig.widgetServer;

packages/cli/src/plugins/metaPlugin.mjs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import fs from 'node:fs/promises';
2+
import path from 'node:path';
23

34
import { createLogger } from '../logger.mjs';
45
import { time } from '../utils.mjs';
@@ -31,7 +32,7 @@ export function metaPlugin({ definition, config, cliConfig }) {
3132

3233
metaInformation = await Promise.all(
3334
generatedFiles.map(async (file) => {
34-
const stat = await fs.stat(`${projectFolder}/${file}`);
35+
const stat = await fs.stat(path.resolve(`${projectFolder}/${file}`));
3536

3637
return { stat, file };
3738
}),

0 commit comments

Comments
 (0)