Commit e828baa67b5f8e6fa28354d85563d127b6b70d6b
1 parent
ddc3786b
fix: replace taskfile module
Showing
7 changed files
with
90 additions
and
59 deletions
README.en-US.md
... | ... | @@ -9,27 +9,26 @@ |
9 | 9 | |
10 | 10 | [CHANGELOG](CHANGELOG.md) |
11 | 11 | |
12 | -- [Introduction](#Introduction) | |
13 | -- [GitHub](#Github) | |
14 | -- [Preview](#Preview) | |
15 | -- [Documentation](#Documentation) | |
16 | -- [Preinstallation](#Preinstallation) | |
17 | - - [Environmental requirements](#Environmental requirements) | |
18 | - - [UI framework](#ui framework) | |
19 | - - [Icon](#Icon) | |
20 | - - [Plugin](#Plugin) | |
21 | - - [Suggested development environment](#Suggested development environment) | |
22 | -- [Install](#Install) | |
23 | -- [Usage](#Usage) | |
24 | - - [Development environment](#Development environment) | |
25 | - - [Build](#Build) | |
26 | - - [Format](#Format) | |
27 | - - [Other](#Other) | |
28 | -- [Git submit specifications](#git submit specifications) | |
29 | -- [Code ontribution](#Code ontribution) | |
30 | -- [Finished features](#Finished features) | |
31 | -- [Developing features](#Developing features) | |
32 | -- [Join us](#Join us) | |
12 | +- [Introduction](#introduction) | |
13 | +- [GitHub](#github) | |
14 | +- [Preview](#preview) | |
15 | +- [Documentation](#documentation) | |
16 | +- [Preinstallation](#preinstallation) | |
17 | + - [Environmental requirements](#environmental-requirements) | |
18 | + - [UI framework](#ui-framework) | |
19 | + - [Icon](#icon) | |
20 | + - [Plugin](#plugin) | |
21 | + - [Suggested development environment](#suggested-development-environment) | |
22 | +- [Install](#install) | |
23 | +- [Usage](#usage) | |
24 | + - [Development environment](#development-environment) | |
25 | + - [Build](#build) | |
26 | + - [Format](#format) | |
27 | + - [Other](#other) | |
28 | +- [Git submit specifications](#git-submit-specifications) | |
29 | +- [Code contribution](#code-contribution) | |
30 | +- [Finished features](#finished-features) | |
31 | +- [Developing features](#developing-features) | |
33 | 32 | |
34 | 33 | ## Introduction |
35 | 34 | ... | ... |
build/jsc.js
1 | 1 | // js调用cli 兼容调用ts |
2 | 2 | |
3 | -const { sh } = require('tasksfile'); | |
3 | +// const { sh } = require('tasksfile'); | |
4 | 4 | const { argv } = require('yargs'); |
5 | +const execa = require('execa'); | |
5 | 6 | |
6 | 7 | let command = ``; |
7 | 8 | |
... | ... | @@ -24,13 +25,28 @@ if (taskList.includes('build') || taskList.includes('report') || taskList.includ |
24 | 25 | } |
25 | 26 | |
26 | 27 | if (taskList && Array.isArray(taskList) && taskList.length) { |
27 | - sh( | |
28 | - `cross-env NODE_ENV=${NODE_ENV} ts-node --project ./build/tsconfig.json ./build/script/cli.ts ${taskList.join( | |
29 | - ' ' | |
30 | - )} ${command}`, | |
28 | + execa( | |
29 | + 'cross-env', | |
30 | + [ | |
31 | + `NODE_ENV=${NODE_ENV}`, | |
32 | + 'ts-node', | |
33 | + '--project', | |
34 | + './build/tsconfig.json', | |
35 | + './build/script/cli.ts', | |
36 | + taskList.join(' '), | |
37 | + command, | |
38 | + ], | |
31 | 39 | { |
32 | - async: true, | |
33 | - nopipe: true, | |
40 | + stdio: 'inherit', | |
34 | 41 | } |
35 | 42 | ); |
43 | + // sh( | |
44 | + // `cross-env NODE_ENV=${NODE_ENV} ts-node --project ./build/tsconfig.json ./build/script/cli.ts ${taskList.join( | |
45 | + // ' ' | |
46 | + // )} ${command}`, | |
47 | + // { | |
48 | + // async: true, | |
49 | + // nopipe: true, | |
50 | + // } | |
51 | + // ); | |
36 | 52 | } | ... | ... |
build/script/build.ts
1 | 1 | // #!/usr/bin/env node |
2 | 2 | |
3 | -import { sh } from 'tasksfile'; | |
3 | +// import { sh } from 'tasksfile'; | |
4 | 4 | |
5 | 5 | import { argv } from 'yargs'; |
6 | 6 | import { runBuildConfig } from './buildConf'; |
7 | 7 | import { runUpdateHtml } from './updateHtml'; |
8 | -import { errorConsole, successConsole } from '../utils'; | |
8 | +import { errorConsole, successConsole, run } from '../utils'; | |
9 | 9 | |
10 | 10 | export const runBuild = async () => { |
11 | 11 | try { |
12 | 12 | const argvList = argv._; |
13 | - let cmd = `npx cross-env NODE_ENV=production vite build`; | |
14 | - await sh(cmd, { | |
15 | - async: true, | |
16 | - nopipe: true, | |
17 | - }); | |
13 | + // let cmd = `cross-env NODE_ENV=production vite build`; | |
14 | + await run('cross-env', ['NODE_ENV=production', 'vite', 'build']); | |
15 | + // await sh(cmd, { | |
16 | + // async: true, | |
17 | + // nopipe: true, | |
18 | + // }); | |
18 | 19 | |
19 | 20 | // Generate configuration file |
20 | 21 | if (!argvList.includes('no-conf')) { | ... | ... |
build/script/changelog.ts
1 | 1 | // #!/usr/bin/env node |
2 | 2 | |
3 | -import { sh } from 'tasksfile'; | |
4 | -import { errorConsole, successConsole } from '../utils'; | |
3 | +// import { sh } from 'tasksfile'; | |
4 | +import { errorConsole, successConsole, run } from '../utils'; | |
5 | 5 | |
6 | 6 | export const runChangeLog = async () => { |
7 | 7 | try { |
8 | - let cmd = `conventional-changelog -p custom-config -i CHANGELOG.md -s -r 0 `; | |
9 | - await sh(cmd, { | |
10 | - async: true, | |
11 | - nopipe: true, | |
12 | - }); | |
13 | - | |
14 | - await sh('prettier --write **/CHANGELOG.md ', { | |
15 | - async: true, | |
16 | - nopipe: true, | |
17 | - }); | |
8 | + // let cmd = `conventional-changelog -p custom-config -i CHANGELOG.md -s -r 0 `; | |
9 | + await run('conventional-changelog', [ | |
10 | + '-p', | |
11 | + 'custom-config', | |
12 | + '-i', | |
13 | + 'CHANGELOG.md', | |
14 | + '-s', | |
15 | + '-r', | |
16 | + '-0', | |
17 | + ]); | |
18 | + // await sh(cmd, { | |
19 | + // async: true, | |
20 | + // nopipe: true, | |
21 | + // }); | |
22 | + await run('prettier', ['--write', '**/CHANGELOG.md']); | |
23 | + // await sh('prettier --write **/CHANGELOG.md ', { | |
24 | + // async: true, | |
25 | + // nopipe: true, | |
26 | + // }); | |
18 | 27 | successConsole('CHANGE_LOG.md generated successfully!'); |
19 | 28 | } catch (error) { |
20 | 29 | errorConsole('CHANGE_LOG.md generated error\n' + error); | ... | ... |
build/script/preserve.ts
... | ... | @@ -3,8 +3,8 @@ |
3 | 3 | import path from 'path'; |
4 | 4 | import fs from 'fs-extra'; |
5 | 5 | import { isEqual } from 'lodash'; |
6 | -import { sh } from 'tasksfile'; | |
7 | -import { successConsole, errorConsole } from '../utils'; | |
6 | +// import { sh } from 'tasksfile'; | |
7 | +import { successConsole, errorConsole, run } from '../utils'; | |
8 | 8 | |
9 | 9 | const resolve = (dir: string) => { |
10 | 10 | return path.resolve(process.cwd(), dir); |
... | ... | @@ -46,10 +46,11 @@ export async function runPreserve() { |
46 | 46 | 'A dependency change is detected, and the dependency is being installed to ensure that the dependency is consistent! (Tip: The project will be executed for the first time)!' |
47 | 47 | ); |
48 | 48 | try { |
49 | - await sh('npm run bootstrap ', { | |
50 | - async: true, | |
51 | - nopipe: true, | |
52 | - }); | |
49 | + await run('npm', ['run', 'bootstrap']); | |
50 | + // await sh('npm run bootstrap ', { | |
51 | + // async: true, | |
52 | + // nopipe: true, | |
53 | + // }); | |
53 | 54 | |
54 | 55 | successConsole('Dependency installation is successful, start running the project!'); |
55 | 56 | ... | ... |
build/script/preview.ts
1 | 1 | import chalk from 'chalk'; |
2 | 2 | import Koa from 'koa'; |
3 | 3 | import inquirer from 'inquirer'; |
4 | -import { sh } from 'tasksfile'; | |
4 | +// import { sh } from 'tasksfile'; | |
5 | 5 | import staticServer from 'koa-static'; |
6 | 6 | import portfinder from 'portfinder'; |
7 | 7 | import { resolve } from 'path'; |
8 | 8 | import viteConfig from '../../vite.config'; |
9 | -import { getIPAddress } from '../utils'; | |
9 | +import { getIPAddress, run } from '../utils'; | |
10 | 10 | |
11 | 11 | const BUILD = 1; |
12 | 12 | const NO_BUILD = 2; |
... | ... | @@ -53,10 +53,11 @@ export const runPreview = async () => { |
53 | 53 | }); |
54 | 54 | const { type } = await prompt; |
55 | 55 | if (type === BUILD) { |
56 | - await sh('npm run build', { | |
57 | - async: true, | |
58 | - nopipe: true, | |
59 | - }); | |
56 | + await run('npm', ['run', 'build']); | |
57 | + // await sh('npm run build', { | |
58 | + // async: true, | |
59 | + // nopipe: true, | |
60 | + // }); | |
60 | 61 | } |
61 | 62 | startApp(); |
62 | 63 | }; | ... | ... |
build/utils.ts
... | ... | @@ -3,6 +3,7 @@ import path from 'path'; |
3 | 3 | import { networkInterfaces } from 'os'; |
4 | 4 | import dotenv from 'dotenv'; |
5 | 5 | import chalk from 'chalk'; |
6 | +import execa from 'execa'; | |
6 | 7 | |
7 | 8 | export const isFunction = (arg: unknown): arg is (...args: any[]) => any => |
8 | 9 | typeof arg === 'function'; |
... | ... | @@ -147,3 +148,6 @@ export function warnConsole(message: any) { |
147 | 148 | export function getCwdPath(...dir: string[]) { |
148 | 149 | return path.resolve(process.cwd(), ...dir); |
149 | 150 | } |
151 | + | |
152 | +export const run = (bin: string, args: any, opts = {}) => | |
153 | + execa(bin, args, { stdio: 'inherit', ...opts }); | ... | ... |