add base url list

This commit is contained in:
熊潇 2025-02-21 00:47:36 +08:00
parent ce84ab4902
commit 5a691bc350
3 changed files with 86 additions and 23 deletions

View File

@ -43,30 +43,33 @@ const command = new Command('deploy')
// 获取directory如果是文件夹获取文件夹下所有文件如果是文件获取文件 // 获取directory如果是文件夹获取文件夹下所有文件如果是文件获取文件
const stat = fs.statSync(directory); const stat = fs.statSync(directory);
let _relativeFiles = []; let _relativeFiles = [];
let isDirectory = false;
if (stat.isDirectory()) { if (stat.isDirectory()) {
isDirectory = true;
const gPath = path.join(directory, '**/*'); const gPath = path.join(directory, '**/*');
const files = await glob(gPath, { cwd: pwd, ignore: ['node_modules/**/*'], onlyFiles: true }); const files = await glob(gPath, { cwd: pwd, ignore: ['node_modules/**/*'], onlyFiles: true });
_relativeFiles = files.map((file) => path.relative(directory, file)); _relativeFiles = files.map((file) => path.relative(directory, file));
console.log('upload Files', _relativeFiles);
console.log('upload Files Key', key, version);
if (!yes) {
// 确认是否上传
const confirm = await inquirer.prompt([
{
type: 'confirm',
name: 'confirm',
message: 'Do you want to upload these files?',
},
]);
if (!confirm.confirm) {
return;
}
}
} else if (stat.isFile()) { } else if (stat.isFile()) {
_relativeFiles = [path.relative(pwd, directory)]; const filename = path.basename(directory);
_relativeFiles = [filename];
} }
console.log('upload Files', _relativeFiles);
const res = await uploadFiles(_relativeFiles, directory, { key, version }); console.log('upload Files Key', key, version);
if (!yes) {
// 确认是否上传
const confirm = await inquirer.prompt([
{
type: 'confirm',
name: 'confirm',
message: 'Do you want to upload these files?',
},
]);
if (!confirm.confirm) {
return;
}
}
const uploadDirectory = isDirectory ? directory : path.dirname(directory);
const res = await uploadFiles(_relativeFiles, uploadDirectory, { key, version });
if (res?.code === 200) { if (res?.code === 200) {
console.log('File uploaded successfully!'); console.log('File uploaded successfully!');
res.data?.data?.files?.map?.((d) => { res.data?.data?.files?.map?.((d) => {

View File

@ -9,10 +9,70 @@ const token = new Command('token').description('show token').action(async () =>
app.addCommand(token); app.addCommand(token);
const baseURL = new Command('baseURL').description('show baseURL').action(async () => { const baseURL = new Command('baseURL')
const config = getConfig(); .alias('base')
console.log('baseURL', config.baseURL); .description('show baseURL')
}); .option('-a, --add <baseURL>', 'add baseURL')
.option('-r, --remove <number>', 'remove baseURL number')
.option('-s, --set <number>', 'set current baseURL')
.option('-l, --list', 'list baseURL')
.option('-c, --clear', 'clear baseURL')
.action(async (opts) => {
const config = getConfig();
let list = config.baseURLList || [];
const quineList = (list: string[]) => {
const newList = new Set(list);
return Array.from(newList);
};
const showList = (list: string[]) => {
if (list.length === 0) {
console.log('expand baseURLList is empty');
return;
}
console.log('----current baseURL:' + config.baseURL+'----\n');
list.forEach((item, index) => {
console.log(`${index + 1}: ${item}`);
});
};
if (opts.add) {
list.push(opts.add);
list = quineList(list);
console.log('add baseURL success\n');
writeConfig({ ...config, baseURLList: list });
showList(list);
return;
}
if (opts.remove) {
const index = Number(opts.remove) - 1;
if (index < 0 || index >= list.length) {
console.log('index out of range');
return;
}
list.splice(index, 1);
list = quineList(list);
showList(list);
writeConfig({ ...config, baseURLList: list });
return;
}
if (opts.set) {
const index = Number(opts.set) - 1;
if (index < 0 || index >= list.length) {
console.log('index out of range');
}
writeConfig({ ...config, baseURL: list[index] });
console.log('set baseURL success:', list[index]);
return;
}
if (opts.list) {
showList(list);
return;
}
if (opts.clear) {
writeConfig({ ...config, baseURLList: [] });
return;
}
console.log('current baseURL:', config.baseURL);
});
app.addCommand(baseURL); app.addCommand(baseURL);
const setBaseURL = new Command('setBaseURL').description('set baseURL').action(async () => { const setBaseURL = new Command('setBaseURL').description('set baseURL').action(async () => {

View File

@ -36,7 +36,7 @@ async function collectFileInfo(filePath: string, baseDir = '.'): Promise<any[]>
// 解析 .npmignore 文件 // 解析 .npmignore 文件
async function loadNpmIgnore(cwd: string): Promise<ignore.Ignore> { async function loadNpmIgnore(cwd: string): Promise<ignore.Ignore> {
const npmIgnorePath = path.join(cwd, '.npmignore'); const npmIgnorePath = path.join(cwd, '.npmignore');
const ig = ignore.default(); const ig = ignore();
try { try {
const content = fs.readFileSync(npmIgnorePath, 'utf-8'); const content = fs.readFileSync(npmIgnorePath, 'utf-8');