pcs-cli
Version:
Baidu Personal Cloud Storage's Command Line Interface.
2 lines (1 loc) • 1.04 kB
JavaScript
import{_ as o}from"../_tslib-NbJOzQvB.js";import{sep as t,join as r}from"path";import e from"chalk";import{t as s,a as i,l as a}from"../index-7szJY7Td.js";import n from"../services/pcs.js";import"fs";import"os";import"crypto";import"https";import"progress";import"../utils/axios.js";import"axios";var d=d=>{d.command("download").alias("dl").description("download remote file").argument("[remote]","remote path",t).argument("[local]","local path",".").option("-t --token [token]","access token").action(((t,d,m)=>o(void 0,void 0,void 0,(function*(){const p=s(t);try{const{list:t}=yield n.listFile(m.token,p);0===t.length&&t.push({server_filename:p,path:p,isdir:0}),t.reduce(((t,s)=>o(void 0,void 0,void 0,(function*(){yield t;const o=r(d,i(s.path));return 1===s.isdir?Promise.resolve():(a(`${e.blueBright("==>")} Downloading ${e.green(o)}`),n.download(m.token,s.path,o))}))),Promise.resolve())}catch(o){const{response:{data:t}}=o;a(`error code ${t.error_code||t.statusCode} : ${t.error_msg||t.statusMessage}`,e.red)}}))))};export{d as default};