2023-05-05 10:59:37 +08:00
|
|
|
import enquirer from 'enquirer';
|
|
|
|
import { exec, resolve } from './utils';
|
|
|
|
import { safeExit } from './utils';
|
2023-05-04 10:39:52 +08:00
|
|
|
|
2023-05-05 10:59:37 +08:00
|
|
|
const configPath = resolve('example/config');
|
|
|
|
const configTempPath = resolve('example/config/temp');
|
2023-05-04 10:39:52 +08:00
|
|
|
|
2023-05-05 10:59:37 +08:00
|
|
|
safeExit(main);
|
2023-05-04 10:39:52 +08:00
|
|
|
|
|
|
|
async function main() {
|
2023-05-05 10:59:37 +08:00
|
|
|
const { platform } = await enquirer.prompt<{ platform: string }>({
|
|
|
|
type: 'select',
|
|
|
|
name: 'platform',
|
|
|
|
message: '请选择启动平台',
|
|
|
|
choices: metas(),
|
|
|
|
});
|
2023-05-04 10:39:52 +08:00
|
|
|
|
2023-05-05 10:59:37 +08:00
|
|
|
exec(`tsc ${configTempPath}/**.ts --outDir ${configPath}`);
|
|
|
|
|
|
|
|
exec(`pnpm -C example dev:${platform}`);
|
|
|
|
}
|
|
|
|
|
|
|
|
function metas() {
|
|
|
|
return [
|
|
|
|
{ name: 'weapp', message: '微信小程序' },
|
|
|
|
{ name: 'swan', message: '百度小程序' },
|
|
|
|
{ name: 'alipay', message: '支付宝小程序' },
|
|
|
|
{ name: 'tt', message: '抖音小程序' },
|
|
|
|
{ name: 'qq', message: 'QQ 小程序' },
|
|
|
|
{ name: 'jd', message: '京东小程序' },
|
|
|
|
{ name: 'dd', message: '钉钉小程序' },
|
|
|
|
{ name: 'lark', message: '飞书小程序' },
|
|
|
|
{ name: 'kwai', message: '快手小程序' },
|
|
|
|
{ name: 'h5', message: 'H5' },
|
|
|
|
];
|
2023-05-04 10:39:52 +08:00
|
|
|
}
|