1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- import chalk from 'chalk';
- import Koa from 'koa';
- // import inquirer from 'inquirer';
- import staticServer from 'koa-static';
- import portfinder from 'portfinder';
- import { resolve } from 'path';
- import viteConfig from '../../vite.config';
- import { getIPAddress } from '../utils';
- // import { runBuild } from './postBuild';
- // const BUILD = 1;
- // const NO_BUILD = 2;
- // start server
- const startApp = () => {
- const port = 9680;
- portfinder.basePort = port;
- const app = new Koa();
- app.use(staticServer(resolve(process.cwd(), viteConfig.outDir || 'dist')));
- portfinder.getPort(async (err, port) => {
- if (err) {
- throw err;
- } else {
- app.listen(port, function () {
- const empty = ' ';
- const common = `The preview program is already running:
- - LOCAL: http://localhost:${port}/
- - NETWORK: http://${getIPAddress()}:${port}/
- `;
- console.log(chalk.cyan('\n' + empty + common));
- });
- }
- });
- };
- // export const runPreview = async () => {
- // // const prompt = inquirer.prompt({
- // // type: 'list',
- // // message: 'Please select a preview method',
- // // name: 'type',
- // // choices: [
- // // {
- // // name: 'Preview after packaging',
- // // value: BUILD,
- // // },
- // // {
- // // name: `No packaging, preview directly (need to have dist file after packaging)`,
- // // value: NO_BUILD,
- // // },
- // // ],
- // // });
- // const { type } = await prompt;
- // if (type === BUILD) {
- // await runBuild(true);
- // }
- // };
- startApp();
|