edgeone-cli 1.0.6 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +5 -139
- package/dist/api/client.js +1 -2
- package/dist/api/signer.js +1 -2
- package/dist/commands/config.js +1 -2
- package/dist/commands/edgeone.js +1 -2
- package/dist/errors/codes.js +1 -2
- package/dist/index.js +1 -2
- package/dist/repl.js +1 -2
- package/dist/utils/crypto.js +1 -2
- package/dist/utils/signature.js +1 -2
- package/package.json +1 -1
- package/dist/api/client.d.ts +0 -69
- package/dist/api/client.d.ts.map +0 -1
- package/dist/api/client.js.map +0 -1
- package/dist/api/signer.d.ts +0 -47
- package/dist/api/signer.d.ts.map +0 -1
- package/dist/api/signer.js.map +0 -1
- package/dist/commands/completion.d.ts +0 -6
- package/dist/commands/completion.d.ts.map +0 -1
- package/dist/commands/completion.js +0 -2
- package/dist/commands/completion.js.map +0 -1
- package/dist/commands/config.d.ts +0 -31
- package/dist/commands/config.d.ts.map +0 -1
- package/dist/commands/config.js.map +0 -1
- package/dist/commands/edgeone.d.ts +0 -14
- package/dist/commands/edgeone.d.ts.map +0 -1
- package/dist/commands/edgeone.js.map +0 -1
- package/dist/completion.d.ts +0 -3
- package/dist/completion.d.ts.map +0 -1
- package/dist/completion.js +0 -3
- package/dist/completion.js.map +0 -1
- package/dist/edgeone/tasks/prefetch.d.ts +0 -23
- package/dist/edgeone/tasks/prefetch.d.ts.map +0 -1
- package/dist/edgeone/tasks/prefetch.js +0 -2
- package/dist/edgeone/tasks/prefetch.js.map +0 -1
- package/dist/edgeone/tasks/purge.d.ts +0 -23
- package/dist/edgeone/tasks/purge.d.ts.map +0 -1
- package/dist/edgeone/tasks/purge.js +0 -2
- package/dist/edgeone/tasks/purge.js.map +0 -1
- package/dist/errors/codes.d.ts +0 -67
- package/dist/errors/codes.d.ts.map +0 -1
- package/dist/errors/codes.js.map +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/repl.d.ts +0 -8
- package/dist/repl.d.ts.map +0 -1
- package/dist/repl.js.map +0 -1
- package/dist/ui/interactive.d.ts +0 -8
- package/dist/ui/interactive.d.ts.map +0 -1
- package/dist/ui/interactive.js +0 -2
- package/dist/ui/interactive.js.map +0 -1
- package/dist/utils/crypto.d.ts +0 -13
- package/dist/utils/crypto.d.ts.map +0 -1
- package/dist/utils/crypto.js.map +0 -1
- package/dist/utils/signature.d.ts +0 -14
- package/dist/utils/signature.d.ts.map +0 -1
- package/dist/utils/signature.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,143 +1,9 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Edgeone Cli
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
作者:棋
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
仅自用,用于管理和 EdgeOne 有关的操作。
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
主页:<https://imqi1.com>
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
- ✅ **配置管理** - 本地安全存储 API 凭证
|
|
12
|
-
- 📋 **交互式配置** - 友好的命令行交互
|
|
13
|
-
- 📟 **REPL 模式** - 内置交互式 Shell,支持 Tab 补全
|
|
14
|
-
|
|
15
|
-
## 安装
|
|
16
|
-
|
|
17
|
-
```bash
|
|
18
|
-
# 克隆项目
|
|
19
|
-
git clone <repository-url>
|
|
20
|
-
cd edgeone-cli
|
|
21
|
-
|
|
22
|
-
# 安装依赖
|
|
23
|
-
pnpm install
|
|
24
|
-
|
|
25
|
-
# 全局安装(可选)
|
|
26
|
-
pnpm link
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
## 快速开始
|
|
30
|
-
|
|
31
|
-
### 1. 初始化配置
|
|
32
|
-
|
|
33
|
-
```bash
|
|
34
|
-
node src/index.js config init
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
按提示输入您的 EdgeOne 凭证信息。
|
|
38
|
-
|
|
39
|
-
### 2. 查看配置
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
node src/index.js config show
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
## 交互式菜单模式
|
|
46
|
-
|
|
47
|
-
直接运行 `edgeone-cli` 即可进入交互模式,全程通过方向键选择操作:
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
edgeone-cli
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
进入后,你可以:
|
|
54
|
-
|
|
55
|
-
- **↑ / ↓ 方向键** - 选择菜单项
|
|
56
|
-
- **Enter 键** - 确认选择
|
|
57
|
-
- **Ctrl+C** - 退出交互模式
|
|
58
|
-
|
|
59
|
-
```
|
|
60
|
-
╔══════════════════════════════════════╗
|
|
61
|
-
║ EdgeOne CLI ║
|
|
62
|
-
║ 本地化 EdgeOne 服务管理工具 ║
|
|
63
|
-
╚══════════════════════════════════════╝
|
|
64
|
-
|
|
65
|
-
? 请选择操作: (Use arrow keys)
|
|
66
|
-
❯ 📋 配置管理
|
|
67
|
-
🔄 清除缓存
|
|
68
|
-
🔥 内容预热
|
|
69
|
-
📊 历史记录
|
|
70
|
-
─────────────────
|
|
71
|
-
❌ 退出
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### 可用功能
|
|
75
|
-
|
|
76
|
-
| 功能 | 说明 |
|
|
77
|
-
|------|------|
|
|
78
|
-
| 📋 配置管理 | 查看、编辑、删除或初始化配置 |
|
|
79
|
-
| 🔄 清除缓存 | 清除全部缓存、指定目录或 URL |
|
|
80
|
-
| 🔥 内容预热 | 预热指定 URL |
|
|
81
|
-
| 📊 历史记录 | 查询清除缓存或预热任务历史 |
|
|
82
|
-
|
|
83
|
-
## 命令说明
|
|
84
|
-
|
|
85
|
-
### config - 配置管理
|
|
86
|
-
|
|
87
|
-
```bash
|
|
88
|
-
# 初始化配置
|
|
89
|
-
edgeone config init
|
|
90
|
-
|
|
91
|
-
# 显示当前配置
|
|
92
|
-
edgeone config show
|
|
93
|
-
|
|
94
|
-
# 编辑配置项
|
|
95
|
-
edgeone config edit
|
|
96
|
-
|
|
97
|
-
# 删除配置
|
|
98
|
-
edgeone config remove
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
## 配置文件
|
|
102
|
-
|
|
103
|
-
配置文件存储在 `~/.edgeone/config.json`:
|
|
104
|
-
|
|
105
|
-
```json
|
|
106
|
-
{
|
|
107
|
-
"secretId": "your-secret-id",
|
|
108
|
-
"secretKey": "your-secret-key",
|
|
109
|
-
"zoneId": "your-zone-id",
|
|
110
|
-
"domain": "example.com"
|
|
111
|
-
}
|
|
112
|
-
```
|
|
113
|
-
|
|
114
|
-
## 开发
|
|
115
|
-
|
|
116
|
-
```bash
|
|
117
|
-
# 安装依赖
|
|
118
|
-
pnpm install
|
|
119
|
-
|
|
120
|
-
# 运行
|
|
121
|
-
node src/index.js
|
|
122
|
-
|
|
123
|
-
# 或使用 npm script
|
|
124
|
-
pnpm start
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
## 项目结构
|
|
128
|
-
|
|
129
|
-
```
|
|
130
|
-
edgeone-cli/
|
|
131
|
-
├── src/
|
|
132
|
-
│ ├── commands/ # 命令定义
|
|
133
|
-
│ │ └── config.js
|
|
134
|
-
│ ├── utils/ # 工具函数
|
|
135
|
-
│ ├── config/ # 配置相关
|
|
136
|
-
│ └── index.js # 入口文件
|
|
137
|
-
├── package.json
|
|
138
|
-
└── README.md
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
## 许可证
|
|
142
|
-
|
|
143
|
-
ISC
|
|
9
|
+
主页2:<https://qi1.website>
|
package/dist/api/client.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import{calculateSignature
|
|
2
|
-
//# sourceMappingURL=api\client.js.map
|
|
1
|
+
import{calculateSignature}from"../utils/signature.js";export class EdgeOneClient{secretId;secretKey;endpoint;region;mode;constructor(secretId,secretKey,endpoint,region="ap-guangzhou",mode="production"){this.secretId=secretId,this.secretKey=secretKey,this.endpoint=endpoint,this.region=region,this.mode=mode}async request(action,version,params){const timestamp=Math.floor(Date.now()/1e3).toString(),requestBody=JSON.stringify(params),requestHeaders={Authorization:calculateSignature({secretId:this.secretId,secretKey:this.secretKey,endpoint:this.endpoint,action,requestBody,timestamp}),"Content-Type":"application/json; charset=utf-8","X-TC-Action":action,"X-TC-Version":version,"X-TC-Timestamp":timestamp,"X-TC-Language":"zh-CN"};"debug"===this.mode&&(console.log("\n请求信息:"),console.log(` URL: https://${this.endpoint}`),console.log(` Headers: ${JSON.stringify({...requestHeaders,Authorization:"***"},null,2)}`),console.log(` Body: ${requestBody}\n`));try{const response=await fetch(`https://${this.endpoint}`,{method:"POST",headers:requestHeaders,body:requestBody}),result=await response.json();return"debug"===this.mode&&(console.log("响应结果:"),console.log(JSON.stringify(result,null,2))),result}catch(error){throw error}}async createPurgeTask(options){const params={ZoneId:options.zoneId||"*",Type:options.type,Method:"delete",Targets:options.targets||[]};return await this.request("CreatePurgeTask","2022-09-01",params)}async describePurgeTasks(zoneIds){const now=new Date,toISOStringWithTimezone=date=>`${date.getFullYear()}-${String(date.getMonth()+1).padStart(2,"0")}-${String(date.getDate()).padStart(2,"0")}T${String(date.getHours()).padStart(2,"0")}:${String(date.getMinutes()).padStart(2,"0")}:${String(date.getSeconds()).padStart(2,"0")}+08:00`,baseParams={StartTime:toISOStringWithTimezone(new Date(now.getTime()-6048e5)),EndTime:toISOStringWithTimezone(now)};if(!zoneIds||0===zoneIds.length)return await this.request("DescribePurgeTasks","2022-09-01",baseParams);if(1===zoneIds.length)return baseParams.ZoneId=zoneIds[0],await this.request("DescribePurgeTasks","2022-09-01",baseParams);const requests=zoneIds.map(zoneId=>{const params={...baseParams,ZoneId:zoneId};return this.request("DescribePurgeTasks","2022-09-01",params)}),results=await Promise.all(requests),merged={Response:{}},allTasks=[];for(const result of results){if(result.Response?.Error)return result;result.Response?.PurgeTasks&&allTasks.push(...result.Response.PurgeTasks)}return merged.Response={...results[0].Response,PurgeTasks:allTasks},merged}async createPrefetchTask(options){const params={ZoneId:options.zoneId||"*",Targets:options.urls};return await this.request("CreatePrefetchTask","2022-09-01",params)}async describePrefetchTasks(zoneIds){const now=new Date,toISOStringWithTimezone=date=>`${date.getFullYear()}-${String(date.getMonth()+1).padStart(2,"0")}-${String(date.getDate()).padStart(2,"0")}T${String(date.getHours()).padStart(2,"0")}:${String(date.getMinutes()).padStart(2,"0")}:${String(date.getSeconds()).padStart(2,"0")}+08:00`,baseParams={StartTime:toISOStringWithTimezone(new Date(now.getTime()-2592e6)),EndTime:toISOStringWithTimezone(now)};if(!zoneIds||0===zoneIds.length)return await this.request("DescribePrefetchTasks","2022-09-01",baseParams);if(1===zoneIds.length)return baseParams.ZoneId=zoneIds[0],await this.request("DescribePrefetchTasks","2022-09-01",baseParams);const requests=zoneIds.map(zoneId=>{const params={...baseParams,ZoneId:zoneId};return this.request("DescribePrefetchTasks","2022-09-01",params)}),results=await Promise.all(requests),merged={Response:{}},allTasks=[];for(const result of results){if(result.Response?.Error)return result;result.Response?.PrefetchTasks&&allTasks.push(...result.Response.PrefetchTasks)}return merged.Response={...results[0].Response,PrefetchTasks:allTasks},merged}async modifyZoneStatus(options){const params={ZoneId:options.zoneId,Paused:options.paused};return await this.request("ModifyZoneStatus","2022-09-01",params)}async describeZoneStatus(options){const params={Filters:[{Name:"zone-id",Values:[options.zoneId]}]};return await this.request("DescribeZones","2022-01-06",params)}async describeHostSettings(options){const params={ZoneId:options.zoneId};return await this.request("DescribeHostSettings","2024-06-04",params)}}
|
package/dist/api/signer.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
//# sourceMappingURL=api\signer.js.map
|
|
1
|
+
import crypto from"crypto";export class Signer{static hmacSha256(key,message){return crypto.createHmac("sha256",key).update(message).digest()}static sha256(message){return crypto.createHash("sha256").update(message).digest()}static sha256Hex(message){return crypto.createHash("sha256").update(message).digest("hex")}static getDate(timestamp){return new Date(1e3*timestamp).toISOString().substr(0,10)}static buildQueryString(params){return Object.keys(params).sort().map(key=>{const value=params[key];return Array.isArray(value)?value.map(v=>`${this._encodeURIComponent(key)}=${this._encodeURIComponent(String(v))}`).join("&"):`${this._encodeURIComponent(key)}=${this._encodeURIComponent(String(value))}`}).join("&")}static _encodeURIComponent(str){return encodeURIComponent(str).replace(/[!*'()]/g,c=>`%${c.charCodeAt(0).toString(16).toUpperCase()}`)}static sign(options){const{method,host,path,queryParams={},bodyParams={},secretId,secretKey,service,region="ap-guangzhou"}=options,queryString=this.buildQueryString(queryParams),body=bodyParams?JSON.stringify(bodyParams):"",timestamp=Math.floor(Date.now()/1e3),date=this.getDate(timestamp),canonicalRequest=`${method}\n${path}\n${queryString}\n${`content-type:application/json\nhost:${host}\n`}\ncontent-type;host\n${this.sha256Hex(body)}`,credentialScope=`${date}/${service}/request`,stringToSign=`TC3-HMAC-SHA256\n${timestamp}\n${credentialScope}\n${this.sha256Hex(canonicalRequest)}`,secretDate=this.hmacSha256(Buffer.from(`TC3${secretKey}`,"utf-8"),date),secretService=this.hmacSha256(secretDate,service),secretSigning=this.hmacSha256(secretService,"request");return{headers:{Authorization:`TC3-HMAC-SHA256 Credential=${secretId}/${credentialScope}, SignedHeaders=content-type;host, Signature=${this.hmacSha256(secretSigning,stringToSign).toString("hex")}`,"Content-Type":"application/json",Host:host,"X-TC-Action":bodyParams.Action||"","X-TC-Timestamp":timestamp.toString(),"X-TC-Version":bodyParams.Version||"","X-TC-Region":region},body}}}
|
package/dist/commands/config.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
//# sourceMappingURL=commands\config.js.map
|
|
1
|
+
import chalk from"chalk";import{Command}from"commander";import fs from"fs";import inquirer from"inquirer";import os from"os";import path from"path";import{decrypt,encrypt,isEncrypted}from"../utils/crypto.js";const CONFIG_DIR=path.join(os.homedir(),".edgeone-cli"),CONFIG_FILE=path.join(CONFIG_DIR,"config.json");export function ensureConfigDir(){fs.existsSync(CONFIG_DIR)||fs.mkdirSync(CONFIG_DIR,{recursive:!0})}export function readConfig(){if(fs.existsSync(CONFIG_FILE)){const content=fs.readFileSync(CONFIG_FILE,"utf-8"),stored=JSON.parse(content);let secretKey=stored.secretKey,needsMigration=!stored.encrypted;if(stored.encrypted||isEncrypted(stored.secretKey))try{secretKey=decrypt(stored.secretKey),needsMigration=!1}catch{needsMigration=!1}let domainIdList=[];stored.domainIdList&&stored.domainIdList.length>0&&(domainIdList="string"==typeof stored.domainIdList[0]?stored.domainIdList.map(id=>({id})):stored.domainIdList);const config={secretId:stored.secretId,secretKey,endpoint:stored.endpoint,mode:stored.mode||"production",domainIdList};return needsMigration&&(writeConfig(config),console.log(chalk.gray("💡 配置已自动升级为加密格式"))),config}return null}export function writeConfig(config){ensureConfigDir();const encryptedSecretKey=encrypt(config.secretKey),stored={secretId:config.secretId,secretKey:encryptedSecretKey,endpoint:config.endpoint,mode:config.mode,domainIdList:config.domainIdList,encrypted:!0};fs.writeFileSync(CONFIG_FILE,JSON.stringify(stored,null,2),"utf-8")}function maskString(str,showLength=4){return str?str.length<=2*showLength?str:str.slice(0,showLength)+"****"+str.slice(-showLength):"N/A"}const configCmd=new Command("config").description("管理 EdgeOne 配置");configCmd.command("init").description("初始化配置").action(async()=>{const existingConfig=readConfig();if(existingConfig){console.log(chalk.yellow("\n⚠ 检测到已存在的配置:\n")),console.log(chalk.gray("─".repeat(40))),console.log(` SecretId: ${chalk.green(maskString(existingConfig.secretId))}`),console.log(` SecretKey: ${chalk.green(maskString(existingConfig.secretKey))}`),console.log(` 接口请求域名: ${chalk.yellow(existingConfig.endpoint||"teo.tencentcloudapi.com")}`),console.log(` 运行模式: ${"debug"===existingConfig.mode?chalk.yellow("调试模式"):chalk.green("生产模式")}`),console.log(chalk.gray("─".repeat(40)));const{confirm}=await inquirer.prompt([{type:"confirm",name:"confirm",message:"已有配置将被覆盖,是否继续?",default:!1}]);if(!confirm)return void console.log(chalk.gray("已取消"))}console.log(chalk.cyan("\n🔧 开始初始化 EdgeOne 配置\n"));const answers=await inquirer.prompt([{type:"input",name:"secretId",message:"请输入 SecretId:",validate:input=>""!==input.trim()||"SecretId 不能为空"},{type:"password",name:"secretKey",message:"请输入 SecretKey:",mask:"*",validate:input=>""!==input.trim()||"SecretKey 不能为空"},{type:"input",name:"endpoint",message:"请输入接口请求域名:",default:"teo.tencentcloudapi.com"},{type:"list",name:"mode",message:"请选择运行模式:",choices:[{name:"生产模式 (不显示调试信息)",value:"production"},{name:"调试模式 (显示详细请求信息)",value:"debug"}],default:"production"},{type:"input",name:"domainIdList",message:"请输入站点列表,格式: id:备注(多个用逗号分隔,留空跳过):",default:""}]);let domainIdList=[];const domainIdInput=answers.domainIdList;domainIdInput&&domainIdInput.trim()&&(domainIdList=domainIdInput.split(",").map(item=>{if((item=item.trim()).includes(":")){const[id,name]=item.split(":");return{id:id.trim(),name:name.trim()}}return{id:item}}).filter(zone=>""!==zone.id)),writeConfig({secretId:answers.secretId,secretKey:answers.secretKey,endpoint:answers.endpoint||"teo.tencentcloudapi.com",mode:answers.mode||"production",domainIdList}),console.log(chalk.green("\n✅ 配置已加密保存到: "+CONFIG_FILE))}),configCmd.command("show").description("显示当前配置").action(function(){const config=readConfig();if(!config)return void console.log(chalk.yellow('⚠ 未找到配置文件,请先运行 "edgeone-cli config init"'));const modeText="debug"===config.mode?"调试模式":"生产模式",modeColor="debug"===config.mode?chalk.yellow:chalk.green;console.log(chalk.cyan("\n📋 当前配置:\n")),console.log(chalk.gray("─".repeat(40))),console.log(` SecretId: ${chalk.green(maskString(config.secretId))}`),console.log(` SecretKey: ${chalk.green(maskString(config.secretKey))}`),console.log(` 接口请求域名: ${chalk.yellow(config.endpoint||"teo.tencentcloudapi.com")}`),console.log(` 运行模式: ${modeColor(modeText)}`),config.domainIdList&&config.domainIdList.length>0&&(console.log(" 站点列表:"),config.domainIdList.forEach((zone,idx)=>{const display=zone.name?`${zone.name} (${zone.id})`:zone.id;console.log(` ${idx+1}. ${chalk.yellow(display)}`)})),console.log(chalk.gray("─".repeat(40)))}),configCmd.command("remove").description("删除配置文件").action(async()=>{if(!fs.existsSync(CONFIG_FILE))return void console.log(chalk.yellow("⚠ 配置文件不存在"));const{confirm}=await inquirer.prompt([{type:"confirm",name:"confirm",message:"确定要删除配置文件吗?",default:!1}]);confirm?(fs.unlinkSync(CONFIG_FILE),console.log(chalk.green("✅ 配置文件已删除"))):console.log(chalk.gray("已取消"))}),configCmd.command("edit").description("编辑配置项").action(async()=>{const config=readConfig();if(!config)return void console.log(chalk.yellow('⚠ 未找到配置文件,请先运行 "edgeone-cli config init"'));const answers=await inquirer.prompt([{type:"list",name:"field",message:"选择要修改的配置项:",choices:[{name:"SecretId",value:"secretId"},{name:"SecretKey",value:"secretKey"},{name:"接口请求域名",value:"endpoint"},{name:"运行模式",value:"mode"},{name:"站点列表",value:"domainIdList"}]},{type:"input",name:"value",message:answers=>`请输入新的 ${answers.field}:`,when:answers=>"secretKey"!==answers.field&&"mode"!==answers.field&&"domainIdList"!==answers.field,validate:input=>""!==input.trim()||"不能为空"},{type:"password",name:"value",message:"请输入新的 SecretKey:",mask:"*",when:answers=>"secretKey"===answers.field,validate:input=>""!==input.trim()||"不能为空"},{type:"list",name:"value",message:"请选择运行模式:",when:answers=>"mode"===answers.field,choices:[{name:"生产模式 (不显示调试信息)",value:"production"},{name:"调试模式 (显示详细请求信息)",value:"debug"}]},{type:"input",name:"value",message:"请输入站点列表(多个用逗号分隔):",when:answers=>"domainIdList"===answers.field,default:""}]);if("domainIdList"===answers.field){const domainIdInput=answers.value,domainIds=domainIdInput&&domainIdInput.trim()?domainIdInput.split(",").map(id=>id.trim()).filter(id=>""!==id):[];config[answers.field]=domainIds}else config[answers.field]=answers.value;writeConfig(config),console.log(chalk.green("✅ 配置已更新"))});export default configCmd;export{CONFIG_FILE};
|
package/dist/commands/edgeone.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import e from"chalk";import o from"cli-table3";import{Command as n}from"commander";import l from"inquirer";import{EdgeOneClient as s}from"../api/client.js";import{readConfig as r}from"./config.js";const c="*";var t;!function(e){e.Url="purge_url",e.Prefix="purge_prefix",e.All="purge_all"}(t||(t={}));export function createPurgeCommand(){return new n("purge").description("清除缓存任务").option("-a, --all","清除全部缓存").option("-d, --dir <path>","清除指定目录缓存").option("-u, --url <urls...>","清除指定URL地址(可多个)").option("-z, --zone <zoneId>","Zone ID(默认: *)").action(async o=>{const{all:n,dir:l,url:g,zone:i=c}=o;let a,d=[];if(n)a=t.All,d=[];else if(l)a=t.Prefix,d=[l];else{if(!(g&&g.length>0))return console.log(e.yellow("⚠ 请指定清除模式:\n")),console.log(e.gray(" 清除全部缓存: edgeone-cli purge --all")),console.log(e.gray(" 清除目录缓存: edgeone-cli purge --dir /path/to/dir")),console.log(e.gray(" 清除URL缓存: edgeone-cli purge --url https://example.com/a.png")),void console.log(e.gray(" edgeone-cli purge -u https://a.png https://b.png"));a=t.Url,d=g}const p=r();if(!p||!p.secretId||!p.secretKey)return void console.log(e.red('\n❌ 配置不完整,请先运行 "edgeone-cli config init" 初始化配置'));const{secretId:y,secretKey:u,endpoint:m="teo.tencentcloudapi.com",mode:h}=p,f="debug"===h;f&&console.log(e.cyan("\n🔄 清除缓存任务\n")),f&&(n?console.log(e.gray("清除模式:"),e.yellow("全部缓存")):l?(console.log(e.gray("清除模式:"),e.yellow("指定目录")),console.log(e.gray("目录路径:"),e.yellow(l))):g&&g.length>0&&(console.log(e.gray("清除模式:"),e.yellow("指定URL")),console.log(e.gray("URL列表:")),g.forEach(o=>console.log(` - ${e.yellow(o)}`))),console.log(e.gray("\nAPI 参数:")),console.log(` Action: ${e.green("CreatePurgeTask")}`),console.log(` Version: ${e.green("2022-09-01")}`),console.log(` Method: ${e.green("delete")}`),console.log(` ZoneId: ${e.green(i)}`),console.log(` Type: ${e.green(a)}`),console.log(` Targets: ${e.green(JSON.stringify(d))}`),console.log(e.gray("\n发送请求...\n")));try{const o=new s(y,u,m,"ap-guangzhou",h),n=await o.createPurgeTask({zoneId:i,type:a,targets:d});n.Response?.Error?(console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(n.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(n.Response.Error.Message)}`)):(console.log(e.green("\n✅ 请求成功!")),console.log(` RequestId: ${e.yellow(n.Response?.RequestId)}`),n.Response?.JobId&&console.log(` JobId: ${e.yellow(n.Response.JobId)}`))}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}})}export function createPrefetchCommand(){return new n("prefetch").description("预热任务").argument("[urls...]","要预热的URL地址列表").option("-z, --zone <zoneId>","Zone ID(默认: *)").action(async(o,n)=>{if(!o||0===o.length)return console.log(e.yellow("⚠ 请指定要预热的URL:\n")),void console.log(e.gray(" 预热URL: edgeone-cli prefetch https://example.com/a.png --zone <zoneId>"));const l=r();if(!l||!l.secretId||!l.secretKey)return void console.log(e.red('\n❌ 配置不完整,请先运行 "edgeone-cli config init" 初始化配置'));const{secretId:c,secretKey:t,endpoint:g="teo.tencentcloudapi.com",mode:i}=l,a="debug"===i,d=n.zone||"*";a&&(console.log(e.cyan("\n🔥 预热任务\n")),console.log(e.gray("URL列表:")),o.forEach(o=>console.log(` - ${e.yellow(o)}`)),console.log(e.gray(`\nZone ID: ${e.green(d)}`)));try{const n=new s(c,t,g,"ap-guangzhou",i),l=await n.createPrefetchTask({zoneId:d,urls:o});l.Response?.Error?(console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(l.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(l.Response.Error.Message)}`)):(console.log(e.green("\n✅ 预热任务已提交!")),console.log(` RequestId: ${e.yellow(l.Response?.RequestId)}`),l.Response?.JobId&&console.log(` JobId: ${e.yellow(l.Response.JobId)}`))}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}})}export function createHistoryCommand(){const c=new n("history").description("查询历史记录").on("--help",()=>{console.log(""),console.log("示例:"),console.log(" $ edgeone-cli history purge # 查询清除缓存历史"),console.log(" $ edgeone-cli history prefetch # 查询预热任务历史"),console.log(" $ edgeone-cli history purge --zone zone-123 # 指定 Zone ID 查询清除缓存历史"),console.log(" $ edgeone-cli history prefetch --zone zone-123 # 指定 Zone ID 查询预热任务历史"),console.log("")}),t=new n("purge").description("查询清除缓存历史记录").option("-z, --zone <zoneId>","Zone ID").action(async n=>{const c=r();if(!c||!c.secretId||!c.secretKey)return void console.log(e.red('\n❌ 配置不完整,请先运行 "edgeone-cli config init" 初始化配置'));const{secretId:t,secretKey:g,endpoint:i="teo.tencentcloudapi.com",mode:a,domainIdList:d}=c,p="debug"===a;let y=[];if(n.zone)y=[n.zone];else{if(!(d&&d.length>0))return void console.log(e.red("\n❌ 未指定 Zone ID,请使用 --zone 参数指定或在配置中添加站点列表"));if(1===d.length)y=[d[0].id];else{const e=d.map(e=>({name:e.name||e.id,value:e.id})),{zones:o}=await l.prompt([{type:"checkbox",name:"zones",message:"请选择站点 (可多选):",choices:e,validate:e=>e.length>0||"请至少选择一个站点"}]);y=o}p&&console.log(e.gray(`已选择站点: ${e.yellow(y.join(", "))}`))}p&&(console.log(e.cyan("\n📋 清除缓存历史记录\n")),console.log(e.gray("API 参数:")),console.log(` Action: ${e.green("DescribePurgeTasks")}`),console.log(` Version: ${e.green("2022-09-01")}`),console.log(` ZoneIds: ${e.yellow(y.join(", "))}`));try{const n=new s(t,g,i,"",a),l=await n.describePurgeTasks(y);if(p&&(console.log(e.cyan("\n响应结果:")),console.log(JSON.stringify(l,null,2))),l.Response?.Error)console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(l.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(l.Response.Error.Message)}`);else{console.log(e.green("\n✅ 查询成功!")),console.log(` RequestId: ${e.yellow(l.Response?.RequestId)}`);const n=l.Response?.Tasks||[];if(n.length>0){console.log(e.cyan("\n📋 清除缓存记录:\n"));const s=new o({head:[e.gray("状态"),e.gray("清除地址"),e.gray("时间"),e.gray("类型")],colWidths:[8,50,30,8],chars:{mid:"","left-mid":"","mid-mid":"","right-mid":""}});n.forEach(o=>{const n="success"===o.Status?e.green("✓"):e.red("✗"),l=o.Target||"all",r="purge_url"===o.Type?"URL":"purge_prefix"===o.Type?"目录":"全部",c=o.CreateTime?o.CreateTime.replace("T"," ").replace("Z","").slice(0,19):"",t=l.length>47?l.slice(0,44)+"...":l;s.push([n,e.yellow(t),e.gray(c),r])}),console.log(s.toString()),console.log(` 总计: ${e.yellow(l.Response?.TotalCount||n.length)} 条记录`);let r=n.filter(e=>"success"===e.Status).length;console.log(` 成功: ${e.green(r)} 条记录`);let c=n.filter(e=>"failed"===e.Status).length;console.log(` 失败: ${e.red(c)} 条记录`)}else console.log(e.gray("\n 暂无清除记录\n"))}}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}}),g=new n("prefetch").description("查询预热任务历史记录").option("-z, --zone <zoneId>","Zone ID").action(async n=>{const c=r();if(!c||!c.secretId||!c.secretKey)return void console.log(e.red('\n❌ 配置不完整,请先运行 "edgeone-cli config init" 初始化配置'));const{secretId:t,secretKey:g,endpoint:i="teo.tencentcloudapi.com",mode:a,domainIdList:d}=c,p="debug"===a;let y=[];if(n.zone)y=[n.zone];else{if(!(d&&d.length>0))return void console.log(e.red("\n❌ 未指定 Zone ID,请使用 --zone 参数指定或在配置中添加站点列表"));if(1===d.length)y=[d[0].id];else{const e=d.map(e=>({name:e.name||e.id,value:e.id})),{zones:o}=await l.prompt([{type:"checkbox",name:"zones",message:"请选择站点 (可多选):",choices:e,validate:e=>e.length>0||"请至少选择一个站点"}]);y=o}p&&console.log(e.gray(`已选择站点: ${e.yellow(y.join(", "))}`))}p&&(console.log(e.cyan("\n📋 预热任务历史记录\n")),console.log(e.gray("API 参数:")),console.log(` Action: ${e.green("DescribePrefetchTasks")}`),console.log(` Version: ${e.green("2022-09-01")}`),console.log(` ZoneIds: ${e.yellow(y.join(", "))}`));try{const n=new s(t,g,i,"",a),l=await n.describePrefetchTasks(y);if(p&&(console.log(e.cyan("\n响应结果:")),console.log(JSON.stringify(l,null,2))),l.Response?.Error)console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(l.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(l.Response.Error.Message)}`);else{console.log(e.green("\n✅ 查询成功!")),console.log(` RequestId: ${e.yellow(l.Response?.RequestId)}`);const n=l.Response?.PrefetchTasks||[];if(n.length>0){console.log(e.cyan("\n📋 预热任务记录:\n"));const s=new o({head:[e.gray("状态"),e.gray("预热地址"),e.gray("时间")],colWidths:[8,60,30],chars:{mid:"","left-mid":"","mid-mid":"","right-mid":""}});n.forEach(o=>{const n="success"===o.Status?e.green("✓"):"processing"===o.Status?e.yellow("⏳"):e.red("✗"),l=o.Target||"unknown",r=o.CreateTime?o.CreateTime.replace("T"," ").replace("Z","").slice(0,19):"",c=l.length>57?l.slice(0,54)+"...":l;s.push([n,e.yellow(c),e.gray(r)])}),console.log(s.toString()),console.log(` 总计: ${e.yellow(l.Response?.TotalCount||n.length)} 条记录`);let r=n.filter(e=>"success"===e.Status).length;console.log(` 成功: ${e.green(r)} 条记录`);let c=n.filter(e=>"processing"===e.Status).length;console.log(` 处理中: ${e.yellow(c)} 条记录`);let t=n.filter(e=>"failed"===e.Status).length;console.log(` 失败: ${e.red(t)} 条记录`)}else console.log(e.gray("\n 暂无预热记录\n"))}}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}});return c.addCommand(t),c.addCommand(g),c}
|
|
2
|
-
//# sourceMappingURL=commands\edgeone.js.map
|
|
1
|
+
import chalk from"chalk";import Table from"cli-table3";import{Command}from"commander";import inquirer from"inquirer";import{EdgeOneClient}from"../api/client.js";import{readConfig}from"./config.js";const DEFAULT_ZONE_ID="*";var PurgeType;!function(PurgeType){PurgeType.Url="purge_url",PurgeType.Prefix="purge_prefix",PurgeType.All="purge_all"}(PurgeType||(PurgeType={}));export function createPurgeCommand(){return new Command("purge").description("清除缓存任务").option("-a, --all","清除全部缓存").option("-d, --dir <path>","清除指定目录缓存").option("-u, --url <urls...>","清除指定URL地址(可多个)").option("-z, --zone <zoneId>","Zone ID(默认: *)").action(async options=>{const{all,dir,url,zone=DEFAULT_ZONE_ID}=options;let type,targets=[];if(all)type=PurgeType.All,targets=[];else if(dir)type=PurgeType.Prefix,targets=[dir];else{if(!(url&&url.length>0))return console.log(chalk.yellow("⚠ 请指定清除模式:\n")),console.log(chalk.gray(" 清除全部缓存: edgeone-cli purge --all")),console.log(chalk.gray(" 清除目录缓存: edgeone-cli purge --dir /path/to/dir")),console.log(chalk.gray(" 清除URL缓存: edgeone-cli purge --url https://example.com/a.png")),void console.log(chalk.gray(" edgeone-cli purge -u https://a.png https://b.png"));type=PurgeType.Url,targets=url}const config=readConfig();if(!config||!config.secretId||!config.secretKey)return void console.log(chalk.red('\n❌ 配置不完整,请先运行 "edgeone-cli config init" 初始化配置'));const{secretId,secretKey,endpoint="teo.tencentcloudapi.com",mode}=config,isDebug="debug"===mode;isDebug&&console.log(chalk.cyan("\n🔄 清除缓存任务\n")),isDebug&&(all?console.log(chalk.gray("清除模式:"),chalk.yellow("全部缓存")):dir?(console.log(chalk.gray("清除模式:"),chalk.yellow("指定目录")),console.log(chalk.gray("目录路径:"),chalk.yellow(dir))):url&&url.length>0&&(console.log(chalk.gray("清除模式:"),chalk.yellow("指定URL")),console.log(chalk.gray("URL列表:")),url.forEach(u=>console.log(` - ${chalk.yellow(u)}`))),console.log(chalk.gray("\nAPI 参数:")),console.log(` Action: ${chalk.green("CreatePurgeTask")}`),console.log(` Version: ${chalk.green("2022-09-01")}`),console.log(` Method: ${chalk.green("delete")}`),console.log(` ZoneId: ${chalk.green(zone)}`),console.log(` Type: ${chalk.green(type)}`),console.log(` Targets: ${chalk.green(JSON.stringify(targets))}`),console.log(chalk.gray("\n发送请求...\n")));try{const client=new EdgeOneClient(secretId,secretKey,endpoint,"ap-guangzhou",mode),result=await client.createPurgeTask({zoneId:zone,type,targets});result.Response?.Error?(console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`)):(console.log(chalk.green("\n✅ 请求成功!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`),result.Response?.JobId&&console.log(` JobId: ${chalk.yellow(result.Response.JobId)}`))}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}})}export function createPrefetchCommand(){return new Command("prefetch").description("预热任务").argument("[urls...]","要预热的URL地址列表").option("-z, --zone <zoneId>","Zone ID(默认: *)").action(async(urls,options)=>{if(!urls||0===urls.length)return console.log(chalk.yellow("⚠ 请指定要预热的URL:\n")),void console.log(chalk.gray(" 预热URL: edgeone-cli prefetch https://example.com/a.png --zone <zoneId>"));const config=readConfig();if(!config||!config.secretId||!config.secretKey)return void console.log(chalk.red('\n❌ 配置不完整,请先运行 "edgeone-cli config init" 初始化配置'));const{secretId,secretKey,endpoint="teo.tencentcloudapi.com",mode}=config,isDebug="debug"===mode,zone=options.zone||"*";isDebug&&(console.log(chalk.cyan("\n🔥 预热任务\n")),console.log(chalk.gray("URL列表:")),urls.forEach(u=>console.log(` - ${chalk.yellow(u)}`)),console.log(chalk.gray(`\nZone ID: ${chalk.green(zone)}`)));try{const client=new EdgeOneClient(secretId,secretKey,endpoint,"ap-guangzhou",mode),result=await client.createPrefetchTask({zoneId:zone,urls});result.Response?.Error?(console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`)):(console.log(chalk.green("\n✅ 预热任务已提交!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`),result.Response?.JobId&&console.log(` JobId: ${chalk.yellow(result.Response.JobId)}`))}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}})}export function createHistoryCommand(){const historyCmd=new Command("history").description("查询历史记录").on("--help",()=>{console.log(""),console.log("示例:"),console.log(" $ edgeone-cli history purge # 查询清除缓存历史"),console.log(" $ edgeone-cli history prefetch # 查询预热任务历史"),console.log(" $ edgeone-cli history purge --zone zone-123 # 指定 Zone ID 查询清除缓存历史"),console.log(" $ edgeone-cli history prefetch --zone zone-123 # 指定 Zone ID 查询预热任务历史"),console.log("")}),purgeHistoryCmd=new Command("purge").description("查询清除缓存历史记录").option("-z, --zone <zoneId>","Zone ID").action(async options=>{const config=readConfig();if(!config||!config.secretId||!config.secretKey)return void console.log(chalk.red('\n❌ 配置不完整,请先运行 "edgeone-cli config init" 初始化配置'));const{secretId,secretKey,endpoint="teo.tencentcloudapi.com",mode,domainIdList}=config,isDebug="debug"===mode;let zoneIds=[];if(options.zone)zoneIds=[options.zone];else{if(!(domainIdList&&domainIdList.length>0))return void console.log(chalk.red("\n❌ 未指定 Zone ID,请使用 --zone 参数指定或在配置中添加站点列表"));if(1===domainIdList.length)zoneIds=[domainIdList[0].id];else{const zoneChoices=domainIdList.map(z=>({name:z.name||z.id,value:z.id})),{zones}=await inquirer.prompt([{type:"checkbox",name:"zones",message:"请选择站点 (可多选):",choices:zoneChoices,validate:input=>input.length>0||"请至少选择一个站点"}]);zoneIds=zones}isDebug&&console.log(chalk.gray(`已选择站点: ${chalk.yellow(zoneIds.join(", "))}`))}isDebug&&(console.log(chalk.cyan("\n📋 清除缓存历史记录\n")),console.log(chalk.gray("API 参数:")),console.log(` Action: ${chalk.green("DescribePurgeTasks")}`),console.log(` Version: ${chalk.green("2022-09-01")}`),console.log(` ZoneIds: ${chalk.yellow(zoneIds.join(", "))}`));try{const client=new EdgeOneClient(secretId,secretKey,endpoint,"",mode),result=await client.describePurgeTasks(zoneIds);if(isDebug&&(console.log(chalk.cyan("\n响应结果:")),console.log(JSON.stringify(result,null,2))),result.Response?.Error)console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`);else{console.log(chalk.green("\n✅ 查询成功!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`);const tasks=result.Response?.Tasks||[];if(tasks.length>0){console.log(chalk.cyan("\n📋 清除缓存记录:\n"));const table=new Table({head:[chalk.gray("状态"),chalk.gray("清除地址"),chalk.gray("时间"),chalk.gray("类型")],colWidths:[8,50,30,8],chars:{mid:"","left-mid":"","mid-mid":"","right-mid":""}});tasks.forEach(task=>{const status="success"===task.Status?chalk.green("✓"):chalk.red("✗"),target=task.Target||"all",type="purge_url"===task.Type?"URL":"purge_prefix"===task.Type?"目录":"全部",createTime=task.CreateTime?task.CreateTime.replace("T"," ").replace("Z","").slice(0,19):"",displayTarget=target.length>47?target.slice(0,44)+"...":target;table.push([status,chalk.yellow(displayTarget),chalk.gray(createTime),type])}),console.log(table.toString()),console.log(` 总计: ${chalk.yellow(result.Response?.TotalCount||tasks.length)} 条记录`);let successCount=tasks.filter(task=>"success"===task.Status).length;console.log(` 成功: ${chalk.green(successCount)} 条记录`);let failedCount=tasks.filter(task=>"failed"===task.Status).length;console.log(` 失败: ${chalk.red(failedCount)} 条记录`)}else console.log(chalk.gray("\n 暂无清除记录\n"))}}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}}),prefetchHistoryCmd=new Command("prefetch").description("查询预热任务历史记录").option("-z, --zone <zoneId>","Zone ID").action(async options=>{const config=readConfig();if(!config||!config.secretId||!config.secretKey)return void console.log(chalk.red('\n❌ 配置不完整,请先运行 "edgeone-cli config init" 初始化配置'));const{secretId,secretKey,endpoint="teo.tencentcloudapi.com",mode,domainIdList}=config,isDebug="debug"===mode;let zoneIds=[];if(options.zone)zoneIds=[options.zone];else{if(!(domainIdList&&domainIdList.length>0))return void console.log(chalk.red("\n❌ 未指定 Zone ID,请使用 --zone 参数指定或在配置中添加站点列表"));if(1===domainIdList.length)zoneIds=[domainIdList[0].id];else{const zoneChoices=domainIdList.map(z=>({name:z.name||z.id,value:z.id})),{zones}=await inquirer.prompt([{type:"checkbox",name:"zones",message:"请选择站点 (可多选):",choices:zoneChoices,validate:input=>input.length>0||"请至少选择一个站点"}]);zoneIds=zones}isDebug&&console.log(chalk.gray(`已选择站点: ${chalk.yellow(zoneIds.join(", "))}`))}isDebug&&(console.log(chalk.cyan("\n📋 预热任务历史记录\n")),console.log(chalk.gray("API 参数:")),console.log(` Action: ${chalk.green("DescribePrefetchTasks")}`),console.log(` Version: ${chalk.green("2022-09-01")}`),console.log(` ZoneIds: ${chalk.yellow(zoneIds.join(", "))}`));try{const client=new EdgeOneClient(secretId,secretKey,endpoint,"",mode),result=await client.describePrefetchTasks(zoneIds);if(isDebug&&(console.log(chalk.cyan("\n响应结果:")),console.log(JSON.stringify(result,null,2))),result.Response?.Error)console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`);else{console.log(chalk.green("\n✅ 查询成功!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`);const tasks=result.Response?.PrefetchTasks||[];if(tasks.length>0){console.log(chalk.cyan("\n📋 预热任务记录:\n"));const table=new Table({head:[chalk.gray("状态"),chalk.gray("预热地址"),chalk.gray("时间")],colWidths:[8,60,30],chars:{mid:"","left-mid":"","mid-mid":"","right-mid":""}});tasks.forEach(task=>{const status="success"===task.Status?chalk.green("✓"):"processing"===task.Status?chalk.yellow("⏳"):chalk.red("✗"),target=task.Target||"unknown",createTime=task.CreateTime?task.CreateTime.replace("T"," ").replace("Z","").slice(0,19):"",displayTarget=target.length>57?target.slice(0,54)+"...":target;table.push([status,chalk.yellow(displayTarget),chalk.gray(createTime)])}),console.log(table.toString()),console.log(` 总计: ${chalk.yellow(result.Response?.TotalCount||tasks.length)} 条记录`);let successCount=tasks.filter(task=>"success"===task.Status).length;console.log(` 成功: ${chalk.green(successCount)} 条记录`);let processingCount=tasks.filter(task=>"processing"===task.Status).length;console.log(` 处理中: ${chalk.yellow(processingCount)} 条记录`);let failedCount=tasks.filter(task=>"failed"===task.Status).length;console.log(` 失败: ${chalk.red(failedCount)} 条记录`)}else console.log(chalk.gray("\n 暂无预热记录\n"))}}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}});return historyCmd.addCommand(purgeHistoryCmd),historyCmd.addCommand(prefetchHistoryCmd),historyCmd}
|
package/dist/errors/codes.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
export var ErrorCode;!function(
|
|
2
|
-
//# sourceMappingURL=errors\codes.js.map
|
|
1
|
+
export var ErrorCode;!function(ErrorCode){ErrorCode.InternalError_BackendError="InternalError.BackendError",ErrorCode.InternalError_DomainConfig="InternalError.DomainConfig",ErrorCode.InternalError_ProxyServer="InternalError.ProxyServer",ErrorCode.InternalError_QuotaSystem="InternalError.QuotaSystem",ErrorCode.InvalidParameter_DomainNotFound="InvalidParameter.DomainNotFound",ErrorCode.InvalidParameter_ParameterError="InvalidParameter.ParameterError",ErrorCode.InvalidParameter_Target="InvalidParameter.Target",ErrorCode.InvalidParameter_TaskNotGenerated="InvalidParameter.TaskNotGenerated",ErrorCode.InvalidParameter_UploadUrl="InvalidParameter.UploadUrl",ErrorCode.LimitExceeded_BatchQuota="LimitExceeded.BatchQuota",ErrorCode.LimitExceeded_DailyQuota="LimitExceeded.DailyQuota",ErrorCode.LimitExceeded_PackNotAllow="LimitExceeded.PackNotAllow",ErrorCode.UnauthorizedOperation_CamUnauthorized="UnauthorizedOperation.CamUnauthorized",ErrorCode.UnauthorizedOperation_NoPermission="UnauthorizedOperation.NoPermission",ErrorCode.UnauthorizedOperation_Unknown="UnauthorizedOperation.Unknown"}(ErrorCode||(ErrorCode={}));const ErrorMessages={[ErrorCode.InternalError_BackendError]:"后台处理出错。",[ErrorCode.InternalError_DomainConfig]:"获取配置失败。",[ErrorCode.InternalError_ProxyServer]:"后端服务器发生未知错误。",[ErrorCode.InternalError_QuotaSystem]:"配额系统处理失败。",[ErrorCode.InvalidParameter_DomainNotFound]:"域名不存在或不属于该账号。",[ErrorCode.InvalidParameter_ParameterError]:'参数错误: 无效 "结束时间", 不在允许的查询范围内: [开始时间, 开始+ 7天]',[ErrorCode.InvalidParameter_Target]:"资源存在错误。",[ErrorCode.InvalidParameter_TaskNotGenerated]:"任务无法生成。",[ErrorCode.InvalidParameter_UploadUrl]:"文件上传链接存在问题。",[ErrorCode.LimitExceeded_BatchQuota]:"本次提交的资源数超过上限。",[ErrorCode.LimitExceeded_DailyQuota]:"当天提交的资源数超过上限。",[ErrorCode.LimitExceeded_PackNotAllow]:"计费套餐不支持。",[ErrorCode.UnauthorizedOperation_CamUnauthorized]:"Cam 未授权。",[ErrorCode.UnauthorizedOperation_NoPermission]:"子账户没有操作权限,请添加权限后继续操作。",[ErrorCode.UnauthorizedOperation_Unknown]:"后端服务器发生未知错误。"};export class ErrorCodeUtil{static getMessage(code){return ErrorMessages[code]||"未知错误"}static getCode(message){const exactMatch=Object.entries(ErrorMessages).find(([,msg])=>msg===message);if(exactMatch)return exactMatch[0];const fuzzyMatch=Object.entries(ErrorMessages).find(([,msg])=>msg.includes(message)||message.includes(msg));return fuzzyMatch?fuzzyMatch[0]:null}static getAllCodes(){return Object.values(ErrorCode)}static isValidCode(code){return Object.values(ErrorCode).includes(code)}static format(code,customMessage){const message=this.getMessage(code);return customMessage?`[${code}] ${customMessage}`:`[${code}] ${message}`}static getCategory(code){const codeStr=code;return codeStr.startsWith("InternalError")?"内部错误":codeStr.startsWith("InvalidParameter")?"参数错误":codeStr.startsWith("LimitExceeded")?"配额限制":codeStr.startsWith("UnauthorizedOperation")?"未授权操作":"未知分类"}}export class EdgeOneError extends Error{code;details;constructor(code,message,details){super(message||ErrorCodeUtil.getMessage(code)),this.name="EdgeOneError",this.code=code,this.details=details}toString(){return ErrorCodeUtil.format(this.code,this.message)}getCategory(){return ErrorCodeUtil.getCategory(this.code)}}
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import
|
|
3
|
-
//# sourceMappingURL=index.js.map
|
|
2
|
+
import chalk from"chalk";import{program}from"commander";import configCmd from"./commands/config.js";import{createHistoryCommand,createPrefetchCommand,createPurgeCommand}from"./commands/edgeone.js";import{startInteractive}from"./repl.js";import packageJson from"../package.json"with{type:"json"};const version=packageJson.version;program.name("edgeone-cli").description("EdgeOne CLI - 本地化 EdgeOne 服务管理工具").version(version,"-v, --version","显示版本号").option("-i, --interactive","进入交互模式"),program.addHelpText("beforeAll",`\n${chalk.cyan.bold("╔═══════════════════════════════════╗")}\n${chalk.cyan.bold("║")} ${chalk.white.bold("EdgeOne CLI")} ${chalk.cyan.bold(" ║")}\n${chalk.cyan.bold("║")} ${chalk.gray("本地化 EdgeOne 服务管理工具")} ${chalk.cyan.bold("║")}\n${chalk.cyan.bold("╚═══════════════════════════════════╝")}\n`),program.addCommand(configCmd),program.addCommand(createPurgeCommand()),program.addCommand(createPrefetchCommand()),program.addCommand(createHistoryCommand());const args=process.argv.slice(2);args.includes("-i")||args.includes("--interactive")?startInteractive():program.parse();
|
package/dist/repl.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import e from"chalk";import o from"inquirer";import{EdgeOneClient as n}from"./api/client.js";import{readConfig as a}from"./commands/config.js";async function t(){await o.prompt([{type:"input",name:"continue",message:"按 Enter 键返回..."}])}function s(){console.log(""),console.log(e.cyan("╔════════════════════════════════════╗")),console.log(e.cyan("║")+" "+e.white.bold("EdgeOne CLI")+" "+e.cyan("║")),console.log(e.cyan("║")+" "+e.gray("本地化 EdgeOne 服务管理工具")+" "+e.cyan("║")),console.log(e.cyan("╚════════════════════════════════════╝")),console.log("")}export async function startInteractive(){a()||(s(),await c()),await async function(){for(;;){console.clear(),s();const n=await o.prompt([{type:"list",name:"action",message:"请选择操作:",choices:[{name:"🔓 配置管理",value:"config"},{name:"🧹 清除缓存",value:"purge"},{name:"🚀 内容预热",value:"prefetch"},{name:"🌐 站点状态",value:"zone-status"},{name:"🕘 历史记录",value:"history"},new o.Separator("─────────────────"),{name:"❌ 退出",value:"exit"}],pageSize:10}]);"exit"===n.action&&(console.log(e.gray("\n👋 再见!\n")),process.exit(0)),n.action&&await l(n.action)}}()}async function l(s){const l=a();switch(s){case"config":await async function(){const n=await o.prompt([{type:"list",name:"action",message:"配置管理:",choices:[{name:"查看配置",value:"show"},{name:"编辑配置",value:"edit"},{name:"删除配置",value:"remove"},{name:"初始化配置",value:"init"},new o.Separator,{name:"← 返回",value:"back"}]}]);if("back"===n.action)return;if("init"===n.action)return void await c();const s=a();if(!s)return void console.log(e.yellow("\n⚠️ 配置不存在,请先初始化\n"));const{EdgeOneClient:l}=await import("./api/client.js");new l(s.secretId,s.secretKey,s.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",s.mode);switch(n.action){case"show":await async function(o){const n="debug"===o.mode?"调试模式":"生产模式",a="debug"===o.mode?e.yellow:e.green;console.log(e.cyan("\n📋 当前配置:\n")),console.log(e.gray("─".repeat(40))),console.log(` SecretId: ${e.green(i(o.secretId))}`),console.log(` SecretKey: ${e.green(i(o.secretKey))}`),console.log(` 接口请求域名: ${e.yellow(o.endpoint||"teo.tencentcloudapi.com")}`),console.log(` 运行模式: ${a(n)}`),o.domainIdList&&o.domainIdList.length>0&&(console.log(" 站点列表:"),o.domainIdList.forEach((o,n)=>{const a=o.name?`${o.name} (${o.id})`:o.id;console.log(` ${n+1}. ${e.yellow(a)}`)}));console.log(e.gray("─".repeat(40))),console.log(""),await t()}(s);break;case"edit":await async function(n){const a=await o.prompt([{type:"list",name:"action",message:"选择要修改的配置项:",choices:[{name:"SecretId",value:"secretId"},{name:"SecretKey",value:"secretKey"},{name:"接口请求域名",value:"endpoint"},{name:"运行模式",value:"mode"},{name:"站点列表",value:"domainIdList"}]}]);let t;"secretId"===a.action?(t=await o.prompt([{type:"input",name:"value",message:"请输入新的 SecretId:",validate:e=>e.trim()||"不能为空"}]),n.secretId=t.value):"secretKey"===a.action?(t=await o.prompt([{type:"password",name:"value",message:"请输入新的 SecretKey:",mask:"*",validate:e=>e.trim()||"不能为空"}]),n.secretKey=t.value):"endpoint"===a.action?(t=await o.prompt([{type:"input",name:"value",message:"请输入新的接口请求域名:"}]),n.endpoint=t.value):"mode"===a.action?(t=await o.prompt([{type:"list",name:"value",message:"请选择运行模式:",choices:[{name:"生产模式 (不显示调试信息)",value:"production"},{name:"调试模式 (显示详细请求信息)",value:"debug"}]}]),n.mode=t.value):"domainIdList"===a.action&&(n.domainIdList&&n.domainIdList.length>0&&(console.log(e.gray("\n当前站点列表:")),n.domainIdList.forEach((o,n)=>{const a=o.name?`${o.name} (${o.id})`:o.id;console.log(` ${n+1}. ${e.yellow(a)}`)}),console.log("")),t=await o.prompt([{type:"input",name:"value",message:"请输入站点列表,格式: id:备注(多个用逗号分隔):"}]),t.value?n.domainIdList=t.value.split(",").map(e=>{if((e=e.trim()).includes(":")){const[o,n]=e.split(":");return{id:o.trim(),name:n.trim()}}return{id:e}}).filter(e=>""!==e.id):n.domainIdList=[]);const{writeConfig:s}=await import("./commands/config.js");s(n),console.log(e.green("\n✅ 配置已更新\n"))}(s);break;case"remove":await async function(){const{confirm:n}=await o.prompt([{type:"confirm",name:"confirm",message:"确定要删除配置文件吗?",default:!1}]);if(n){const o=await import("fs"),n=await import("path"),a=await import("os"),t=n.join(a.homedir(),".edgeone-cli","config.json");o.existsSync(t)&&(o.unlinkSync(t),console.log(e.green("\n✅ 配置文件已删除\n")))}}()}}();break;case"purge":l?await async function(a){const s=await o.prompt([{type:"list",name:"type",message:"选择清除类型:",choices:[{name:"清除全部缓存",value:"all"},{name:"清除指定目录缓存",value:"dir"},{name:"清除指定 URL 缓存",value:"url"},new o.Separator,{name:"← 返回",value:"back"}]}]);if("back"===s.type)return;let l=[],c="purge_all",i="*";if(a.domainIdList&&a.domainIdList.length>0){const e=a.domainIdList.map(e=>({name:e.name||e.id,value:e.id})),n=await o.prompt([{type:"list",name:"zone",message:"选择站点:",choices:["* (全部站点)",...e]}]);"* (全部站点)"!==n.zone&&(i=n.zone)}if("all"===s.type){if(!(await o.prompt([{type:"confirm",name:"confirm",message:`确认清除全部缓存? (Zone: ${i})`,default:!1}])).confirm)return;c="purge_all"}else if("dir"===s.type){const e=await o.prompt([{type:"input",name:"dir",message:"请输入目录路径 (输入 :q 或按 Ctrl+C 返回):"}]);if(":q"===e.dir||!e.dir)return;l=[e.dir],c="purge_prefix"}else if("url"===s.type){const e=await o.prompt([{type:"input",name:"urls",message:"请输入 URL (多个用空格分隔, 输入 :q 或按 Ctrl+C 返回):"}]);if(":q"===e.urls||!e.urls)return;l=e.urls.split(/\s+/).filter(e=>e.trim()),c="purge_url"}await async function(o,a,s,l){const c=new n(o.secretId,o.secretKey,o.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",o.mode),i="debug"===o.mode;i&&(console.log(e.cyan("\n🔄 清除缓存任务\n")),console.log(e.gray("API 参数:")),console.log(` ZoneId: ${e.green(l)}`),console.log(` Type: ${e.green(a)}`),s.length>0&&console.log(` Targets: ${e.green(JSON.stringify(s))}`),console.log(""));try{const o=await c.createPurgeTask({zoneId:l,type:a,targets:s});o.Response?.Error?(console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(o.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(o.Response.Error.Message)}`)):(console.log(e.green("\n✅ 请求成功!")),console.log(` RequestId: ${e.yellow(o.Response?.RequestId)}`),o.Response?.JobId&&console.log(` JobId: ${e.yellow(o.Response.JobId)}`))}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}console.log(""),await t()}(a,c,l,i)}(l):(console.log(e.yellow("\n⚠️ 请先初始化配置\n")),await c());break;case"prefetch":l?await async function(a){const s=await o.prompt([{type:"input",name:"urls",message:"请输入要预热的 URL (多个用空格分隔, 输入 :q 或按 Ctrl+C 返回):"}]);if(":q"===s.urls||!s.urls.trim())return;const l=s.urls.split(/\s+/).filter(e=>e.trim());let c="*";if(a.domainIdList&&a.domainIdList.length>0){const e=a.domainIdList.map(e=>({name:e.name||e.id,value:e.id})),n=await o.prompt([{type:"list",name:"zone",message:"选择站点:",choices:["* (全部站点)",...e]}]);"* (全部站点)"!==n.zone&&(c=n.zone)}if(!(await o.prompt([{type:"confirm",name:"confirm",message:`确认预热以下 URL?\n ${l.join("\n ")}\n`,default:!0}])).confirm)return;await async function(o,a,s){const l=new n(o.secretId,o.secretKey,o.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",o.mode),c="debug"===o.mode;c&&(console.log(e.cyan("\n🔥 预热任务\n")),console.log(e.gray("URL列表:")),a.forEach(o=>console.log(` - ${e.yellow(o)}`)),console.log(`\nZone ID: ${e.green(s)}`),console.log(""));try{const o=await l.createPrefetchTask({zoneId:s,urls:a});o.Response?.Error?(console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(o.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(o.Response.Error.Message)}`)):(console.log(e.green("\n✅ 预热任务已提交!")),console.log(` RequestId: ${e.yellow(o.Response?.RequestId)}`),o.Response?.JobId&&console.log(` JobId: ${e.yellow(o.Response.JobId)}`))}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}console.log(""),await t()}(a,l,c)}(l):(console.log(e.yellow("\n⚠️ 请先初始化配置\n")),await c());break;case"history":l?await async function(a){const s=await o.prompt([{type:"list",name:"type",message:"选择查询类型:",choices:[{name:"清除缓存历史",value:"purge"},{name:"预热任务历史",value:"prefetch"},new o.Separator,{name:"← 返回",value:"back"}]}]);if("back"===s.type)return;let l=[];if(!(a.domainIdList&&a.domainIdList.length>0))return void console.log(e.yellow("\n⚠️ 未配置站点列表,请使用 --zone 参数指定或在配置中添加\n"));{const e=a.domainIdList.map(e=>({name:e.name||e.id,value:e.id,short:e.name||e.id}));l=(await o.prompt([{type:"checkbox",name:"zones",message:"选择站点 (可多选):",choices:e,validate:e=>e.length>0||"请至少选择一个站点"}])).zones}"purge"===s.type?await async function(o,a){const s=new n(o.secretId,o.secretKey,o.endpoint||"teo.tencentcloudapi.com","",o.mode),l="debug"===o.mode;l&&(console.log(e.cyan("\n📋 清除缓存历史记录\n")),console.log(e.gray("ZoneIds: "+a.join(", "))));try{const o=await s.describePurgeTasks(a);if(o.Response?.Error)console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(o.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(o.Response.Error.Message)}`);else{console.log(e.green("\n✅ 查询成功!")),console.log(` RequestId: ${e.yellow(o.Response?.RequestId)}`);const n=o.Response?.Tasks||[];if(n.length>0){const{default:a}=await import("cli-table3"),t=new a({head:[e.gray("状态"),e.gray("清除地址"),e.gray("时间"),e.gray("类型")],colWidths:[8,50,30,8],chars:{mid:"","left-mid":"","mid-mid":"","right-mid":""}});n.forEach(o=>{const n="success"===o.Status?e.green("✓"):e.red("✗"),a=o.Target||"all",s="purge_url"===o.Type?"URL":"purge_prefix"===o.Type?"目录":"全部",l=o.CreateTime?o.CreateTime.replace("T"," ").replace("Z","").slice(0,19):"",c=a.length>47?a.slice(0,44)+"...":a;t.push([n,e.yellow(c),e.gray(l),s])}),console.log(e.cyan("\n📋 清除缓存记录:\n")),console.log(t.toString()),console.log(` 总计: ${e.yellow(o.Response?.TotalCount||n.length)} 条记录`)}else console.log(e.gray("\n 暂无清除记录\n"))}}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}console.log(""),await t()}(a,l):await async function(o,a){const s=new n(o.secretId,o.secretKey,o.endpoint||"teo.tencentcloudapi.com","",o.mode),l="debug"===o.mode;l&&(console.log(e.cyan("\n📋 预热任务历史记录\n")),console.log(e.gray("ZoneIds: "+a.join(", "))));try{const o=await s.describePrefetchTasks(a);if(o.Response?.Error)console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(o.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(o.Response.Error.Message)}`);else{console.log(e.green("\n✅ 查询成功!")),console.log(` RequestId: ${e.yellow(o.Response?.RequestId)}`);const n=o.Response?.PrefetchTasks||[];if(n.length>0){const{default:a}=await import("cli-table3"),t=new a({head:[e.gray("状态"),e.gray("预热地址"),e.gray("时间")],colWidths:[8,60,30],chars:{mid:"","left-mid":"","mid-mid":"","right-mid":""}});n.forEach(o=>{const n="success"===o.Status?e.green("✓"):"processing"===o.Status?e.yellow("⏳"):e.red("✗"),a=o.Target||"unknown",s=o.CreateTime?o.CreateTime.replace("T"," ").replace("Z","").slice(0,19):"",l=a.length>57?a.slice(0,54)+"...":a;t.push([n,e.yellow(l),e.gray(s)])}),console.log(e.cyan("\n📋 预热任务记录:\n")),console.log(t.toString()),console.log(` 总计: ${e.yellow(o.Response?.TotalCount||n.length)} 条记录`)}else console.log(e.gray("\n 暂无预热记录\n"))}}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}console.log(""),await t()}(a,l)}(l):(console.log(e.yellow("\n⚠️ 请先初始化配置\n")),await c());break;case"zone-status":l?await async function(a){if(!a.domainIdList||0===a.domainIdList.length)return console.log(e.yellow("\n⚠️ 未配置站点列表,请先在配置中添加站点\n")),void await t();const s=await o.prompt([{type:"list",name:"action",message:"站点状态管理:",choices:[{name:"🔍 查看站点状态",value:"view"},{name:"🔘 修改站点状态",value:"modify"},new o.Separator,{name:"← 返回",value:"back"}]}]);if("back"===s.action)return;"view"===s.action?await async function(o){const a=await r(o,"选择要查看的站点:");if(!a)return;const s=o.domainIdList.find(e=>e.id===a),l=s?.name||a,c=new n(o.secretId,o.secretKey,o.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",o.mode),i="debug"===o.mode;i&&(console.log(e.cyan("\n🔍 查看站点状态\n")),console.log(e.gray("API 参数:")),console.log(` Action: ${e.green("DescribeZones")}`),console.log(` ZoneIds: ${e.green([a])}`),console.log(""));try{const o=await c.describeZoneStatus({zoneId:a});if(o.Response?.Error)console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(o.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(o.Response.Error.Message)}`);else{console.log(e.green("\n✅ 查询成功!")),console.log(` RequestId: ${e.yellow(o.Response?.RequestId)}`);const n=o.Response?.Zones||[];if(n.length>0){const o=n[0].Paused,t=o?"关闭":"开启",s=o?e.red:e.green;console.log(e.cyan("\n📋 站点状态:\n")),console.log(e.gray("─".repeat(40))),console.log(` 站点名称: ${e.yellow(l)}`),console.log(` 站点ID: ${e.yellow(a)}`),console.log(` 状态: ${s(t)} (${o})`),console.log(e.gray("─".repeat(40)))}else console.log(e.gray("\n 未找到站点信息\n"))}}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}console.log(""),await t()}(a):"modify"===s.action&&await async function(a){const s=await r(a,"选择要修改的站点:");if(!s)return;const l=a.domainIdList.find(e=>e.id===s),c=l?.name||s,i=await o.prompt([{type:"list",name:"paused",message:`选择站点状态 (${c}):`,choices:[{name:"开启 (Paused: false)",value:!1},{name:"关闭 (Paused: true)",value:!0},new o.Separator,{name:"← 返回",value:"back"}]}]);if("back"===i.paused)return;const d=i.paused,m=d?"关闭":"开启";if(!(await o.prompt([{type:"confirm",name:"confirm",message:`确认将站点 ${c} 设置为 ${m}?`,default:!0}])).confirm)return;await async function(o,a,s,l){const c=new n(o.secretId,o.secretKey,o.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",o.mode),i="debug"===o.mode;i&&(console.log(e.cyan("\n🔘 修改站点状态\n")),console.log(e.gray("API 参数:")),console.log(` Action: ${e.green("ModifyZoneStatus")}`),console.log(` ZoneId: ${e.green(a)}`),console.log(` Paused: ${e.green(s)}`),console.log(""));try{const o=await c.modifyZoneStatus({zoneId:a,paused:s});o.Response?.Error?(console.log(e.red("\n❌ 请求失败:")),console.log(` 错误码: ${e.yellow(o.Response.Error.Code)}`),console.log(` 错误信息: ${e.yellow(o.Response.Error.Message)}`)):(console.log(e.green("\n✅ 站点状态已更新!")),console.log(` 状态: ${e.yellow(l)}`),console.log(` RequestId: ${e.yellow(o.Response?.RequestId)}`))}catch(o){console.log(e.red("\n❌ 请求异常:")),console.log(` ${o.message}`)}console.log(""),await t()}(a,s,d,m)}(a)}(l):(console.log(e.yellow("\n⚠️ 请先初始化配置\n")),await c())}}async function c(){const n=a();if(n){const{overwrite:e}=await o.prompt([{type:"confirm",name:"overwrite",message:"配置已存在,是否覆盖?",default:!1}]);if(!e)return}const t=n?.domainIdList?n.domainIdList.map(e=>e.name?`${e.id}:${e.name}`:e.id).join(", "):"",s=await o.prompt([{type:"input",name:"secretId",message:"请输入 SecretId:",default:n?.secretId||"",validate:e=>!!e.trim()||"SecretId 不能为空"},{type:"password",name:"secretKey",message:"请输入 SecretKey:",mask:"*",validate:e=>!!e.trim()||"SecretKey 不能为空"},{type:"input",name:"endpoint",message:"请输入接口请求域名:",default:n?.endpoint||"teo.tencentcloudapi.com"},{type:"list",name:"mode",message:"请选择运行模式:",choices:[{name:"生产模式 (不显示调试信息)",value:"production"},{name:"调试模式 (显示详细请求信息)",value:"debug"}],default:n?.mode||"production"},{type:"input",name:"domainIdList",message:"请输入站点列表,格式: id:备注(多个用逗号分隔,留空跳过):",default:t}]),{writeConfig:l}=await import("./commands/config.js");let c=[];s.domainIdList&&s.domainIdList.trim()&&(c=s.domainIdList.split(",").map(e=>{if((e=e.trim()).includes(":")){const[o,n]=e.split(":");return{id:o.trim(),name:n.trim()}}return{id:e}}).filter(e=>""!==e.id)),l({secretId:s.secretId,secretKey:s.secretKey,endpoint:s.endpoint,mode:s.mode,domainIdList:c});const i=n?"更新":"保存";console.log(e.green(`\n✅ 配置已${i}\n`))}function i(e,o=4){return e?e.length<=2*o?e:e.slice(0,o)+"****"+e.slice(-o):"N/A"}async function r(e,n){const a=e.domainIdList.map(e=>({name:e.name||e.id,value:e.id})),t=await o.prompt([{type:"list",name:"zone",message:n,choices:[...a,new o.Separator,{name:"← 返回",value:"back"}]}]);return"back"===t.zone?null:t.zone}
|
|
2
|
-
//# sourceMappingURL=repl.js.map
|
|
1
|
+
import chalk from"chalk";import inquirer from"inquirer";import{EdgeOneClient}from"./api/client.js";import{readConfig}from"./commands/config.js";async function pauseToContinue(){await inquirer.prompt([{type:"input",name:"continue",message:"按 Enter 键返回..."}])}function showBanner(){console.log(""),console.log(chalk.cyan("╔════════════════════════════════════╗")),console.log(chalk.cyan("║")+" "+chalk.white.bold("EdgeOne CLI")+" "+chalk.cyan("║")),console.log(chalk.cyan("║")+" "+chalk.gray("本地化 EdgeOne 服务管理工具")+" "+chalk.cyan("║")),console.log(chalk.cyan("╚════════════════════════════════════╝")),console.log("")}export async function startInteractive(){readConfig()||(showBanner(),await initConfig()),await async function(){for(;;){console.clear(),showBanner();const answers=await inquirer.prompt([{type:"list",name:"action",message:"请选择操作:",choices:[{name:"🔓 配置管理",value:"config"},{name:"🧹 清除缓存",value:"purge"},{name:"🚀 内容预热",value:"prefetch"},{name:"🌐 站点状态",value:"zone-status"},new inquirer.Separator("─────────────────"),{name:"❌ 退出",value:"exit"}],pageSize:10}]);"exit"===answers.action&&(console.log(chalk.gray("\n👋 再见!\n")),process.exit(0)),answers.action&&await handleAction(answers.action)}}()}async function handleAction(action){const config=readConfig();switch(action){case"config":await async function(){const answers=await inquirer.prompt([{type:"list",name:"action",message:"配置管理:",choices:[{name:"查看配置",value:"show"},{name:"编辑配置",value:"edit"},{name:"删除配置",value:"remove"},{name:"初始化配置",value:"init"},new inquirer.Separator,{name:"← 返回",value:"back"}]}]);if("back"===answers.action)return;if("init"===answers.action)return void await initConfig();const config=readConfig();if(!config)return void console.log(chalk.yellow("\n⚠️ 配置不存在,请先初始化\n"));const{EdgeOneClient}=await import("./api/client.js");new EdgeOneClient(config.secretId,config.secretKey,config.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",config.mode);switch(answers.action){case"show":await async function(config){const modeText="debug"===config.mode?"调试模式":"生产模式",modeColor="debug"===config.mode?chalk.yellow:chalk.green;console.log(chalk.cyan("\n📋 当前配置:\n")),console.log(chalk.gray("─".repeat(40))),console.log(` SecretId: ${chalk.green(maskString(config.secretId))}`),console.log(` SecretKey: ${chalk.green(maskString(config.secretKey))}`),console.log(` 接口请求域名: ${chalk.yellow(config.endpoint||"teo.tencentcloudapi.com")}`),console.log(` 运行模式: ${modeColor(modeText)}`),config.domainIdList&&config.domainIdList.length>0&&(console.log(" 站点列表:"),config.domainIdList.forEach((zone,idx)=>{const display=zone.name?`${zone.name} (${zone.id})`:zone.id;console.log(` ${idx+1}. ${chalk.yellow(display)}`)}));console.log(chalk.gray("─".repeat(40))),console.log(""),await pauseToContinue()}(config);break;case"edit":await async function(config){const answers=await inquirer.prompt([{type:"list",name:"action",message:"选择要修改的配置项:",choices:[{name:"SecretId",value:"secretId"},{name:"SecretKey",value:"secretKey"},{name:"接口请求域名",value:"endpoint"},{name:"运行模式",value:"mode"},{name:"站点列表",value:"domainIdList"}]}]);let newValue;"secretId"===answers.action?(newValue=await inquirer.prompt([{type:"input",name:"value",message:"请输入新的 SecretId:",validate:i=>i.trim()||"不能为空"}]),config.secretId=newValue.value):"secretKey"===answers.action?(newValue=await inquirer.prompt([{type:"password",name:"value",message:"请输入新的 SecretKey:",mask:"*",validate:i=>i.trim()||"不能为空"}]),config.secretKey=newValue.value):"endpoint"===answers.action?(newValue=await inquirer.prompt([{type:"input",name:"value",message:"请输入新的接口请求域名:"}]),config.endpoint=newValue.value):"mode"===answers.action?(newValue=await inquirer.prompt([{type:"list",name:"value",message:"请选择运行模式:",choices:[{name:"生产模式 (不显示调试信息)",value:"production"},{name:"调试模式 (显示详细请求信息)",value:"debug"}]}]),config.mode=newValue.value):"domainIdList"===answers.action&&(config.domainIdList&&config.domainIdList.length>0&&(console.log(chalk.gray("\n当前站点列表:")),config.domainIdList.forEach((zone,idx)=>{const display=zone.name?`${zone.name} (${zone.id})`:zone.id;console.log(` ${idx+1}. ${chalk.yellow(display)}`)}),console.log("")),newValue=await inquirer.prompt([{type:"input",name:"value",message:"请输入站点列表,格式: id:备注(多个用逗号分隔):"}]),newValue.value?config.domainIdList=newValue.value.split(",").map(item=>{if((item=item.trim()).includes(":")){const[id,name]=item.split(":");return{id:id.trim(),name:name.trim()}}return{id:item}}).filter(zone=>""!==zone.id):config.domainIdList=[]);const{writeConfig}=await import("./commands/config.js");writeConfig(config),console.log(chalk.green("\n✅ 配置已更新\n"))}(config);break;case"remove":await async function(){const{confirm}=await inquirer.prompt([{type:"confirm",name:"confirm",message:"确定要删除配置文件吗?",default:!1}]);if(confirm){const fs=await import("fs"),path=await import("path"),os=await import("os"),CONFIG_FILE=path.join(os.homedir(),".edgeone-cli","config.json");fs.existsSync(CONFIG_FILE)&&(fs.unlinkSync(CONFIG_FILE),console.log(chalk.green("\n✅ 配置文件已删除\n")))}}()}}();break;case"purge":config?await async function(config){const actionAnswers=await inquirer.prompt([{type:"list",name:"type",message:"选择操作:",choices:[{name:"清除缓存",value:"purge"},{name:"查询历史",value:"history"},new inquirer.Separator,{name:"← 返回",value:"back"}]}]);if("back"===actionAnswers.type)return;if("history"===actionAnswers.type)return void await async function(config){let zoneIds=[];if(!(config.domainIdList&&config.domainIdList.length>0))return void console.log(chalk.yellow("\n⚠️ 未配置站点列表,请使用 --zone 参数指定或在配置中添加\n"));{const zoneChoices=config.domainIdList.map(zone=>({name:zone.name||zone.id,value:zone.id,short:zone.name||zone.id}));zoneIds=(await inquirer.prompt([{type:"checkbox",name:"zones",message:"选择站点 (可多选):",choices:zoneChoices,validate:input=>input.length>0||"请至少选择一个站点"}])).zones}await async function(config,zoneIds){const client=new EdgeOneClient(config.secretId,config.secretKey,config.endpoint||"teo.tencentcloudapi.com","",config.mode),isDebug="debug"===config.mode;isDebug&&(console.log(chalk.cyan("\n📋 清除缓存历史记录\n")),console.log(chalk.gray("ZoneIds: "+zoneIds.join(", "))));try{const result=await client.describePurgeTasks(zoneIds);if(result.Response?.Error)console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`);else{console.log(chalk.green("\n✅ 查询成功!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`);const tasks=result.Response?.Tasks||[];if(tasks.length>0){const{default:Table}=await import("cli-table3"),table=new Table({head:[chalk.gray("状态"),chalk.gray("清除地址"),chalk.gray("时间"),chalk.gray("类型")],colWidths:[8,50,30,8],chars:{mid:"","left-mid":"","mid-mid":"","right-mid":""}});tasks.forEach(task=>{const status="success"===task.Status?chalk.green("✓"):chalk.red("✗"),target=task.Target||"all",type="purge_url"===task.Type?"URL":"purge_prefix"===task.Type?"目录":"全部",createTime=task.CreateTime?task.CreateTime.replace("T"," ").replace("Z","").slice(0,19):"",displayTarget=target.length>47?target.slice(0,44)+"...":target;table.push([status,chalk.yellow(displayTarget),chalk.gray(createTime),type])}),console.log(chalk.cyan("\n📋 清除缓存记录:\n")),console.log(table.toString()),console.log(` 总计: ${chalk.yellow(result.Response?.TotalCount||tasks.length)} 条记录`)}else console.log(chalk.gray("\n 暂无清除记录\n"))}}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}console.log(""),await pauseToContinue()}(config,zoneIds)}(config);const answers=await inquirer.prompt([{type:"list",name:"type",message:"选择清除类型:",choices:[{name:"清除全部缓存",value:"all"},{name:"清除指定目录缓存",value:"dir"},{name:"清除指定 URL 缓存",value:"url"},new inquirer.Separator,{name:"← 返回",value:"back"}]}]);if("back"===answers.type)return;let targets=[],purgeType="purge_all",zoneId="*";if(config.domainIdList&&config.domainIdList.length>0){const zoneChoices=config.domainIdList.map(zone=>({name:zone.name||zone.id,value:zone.id})),zoneAnswers=await inquirer.prompt([{type:"list",name:"zone",message:"选择站点:",choices:["* (全部站点)",...zoneChoices]}]);"* (全部站点)"!==zoneAnswers.zone&&(zoneId=zoneAnswers.zone)}if("all"===answers.type){if(!(await inquirer.prompt([{type:"confirm",name:"confirm",message:`确认清除全部缓存? (Zone: ${zoneId})`,default:!1}])).confirm)return;purgeType="purge_all"}else if("dir"===answers.type){const dirAnswers=await inquirer.prompt([{type:"input",name:"dir",message:"请输入目录路径 (输入 :q 或按 Ctrl+C 返回):"}]);if(":q"===dirAnswers.dir||!dirAnswers.dir)return;targets=[dirAnswers.dir],purgeType="purge_prefix"}else if("url"===answers.type){const urlAnswers=await inquirer.prompt([{type:"input",name:"urls",message:"请输入 URL (多个用空格分隔, 输入 :q 或按 Ctrl+C 返回):"}]);if(":q"===urlAnswers.urls||!urlAnswers.urls)return;targets=urlAnswers.urls.split(/\s+/).filter(u=>u.trim()),purgeType="purge_url"}await async function(config,type,targets,zoneId){const client=new EdgeOneClient(config.secretId,config.secretKey,config.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",config.mode),isDebug="debug"===config.mode;isDebug&&(console.log(chalk.cyan("\n🔄 清除缓存任务\n")),console.log(chalk.gray("API 参数:")),console.log(` ZoneId: ${chalk.green(zoneId)}`),console.log(` Type: ${chalk.green(type)}`),targets.length>0&&console.log(` Targets: ${chalk.green(JSON.stringify(targets))}`),console.log(""));try{const result=await client.createPurgeTask({zoneId,type,targets});result.Response?.Error?(console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`)):(console.log(chalk.green("\n✅ 请求成功!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`),result.Response?.JobId&&console.log(` JobId: ${chalk.yellow(result.Response.JobId)}`))}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}console.log(""),await pauseToContinue()}(config,purgeType,targets,zoneId)}(config):(console.log(chalk.yellow("\n⚠️ 请先初始化配置\n")),await initConfig());break;case"prefetch":config?await async function(config){const actionAnswers=await inquirer.prompt([{type:"list",name:"type",message:"选择操作:",choices:[{name:"内容预热",value:"prefetch"},{name:"查询历史",value:"history"},new inquirer.Separator,{name:"← 返回",value:"back"}]}]);if("back"===actionAnswers.type)return;if("history"===actionAnswers.type)return void await async function(config){let zoneIds=[];if(!(config.domainIdList&&config.domainIdList.length>0))return void console.log(chalk.yellow("\n⚠️ 未配置站点列表,请使用 --zone 参数指定或在配置中添加\n"));{const zoneChoices=config.domainIdList.map(zone=>({name:zone.name||zone.id,value:zone.id,short:zone.name||zone.id}));zoneIds=(await inquirer.prompt([{type:"checkbox",name:"zones",message:"选择站点 (可多选):",choices:zoneChoices,validate:input=>input.length>0||"请至少选择一个站点"}])).zones}await async function(config,zoneIds){const client=new EdgeOneClient(config.secretId,config.secretKey,config.endpoint||"teo.tencentcloudapi.com","",config.mode),isDebug="debug"===config.mode;isDebug&&(console.log(chalk.cyan("\n📋 预热任务历史记录\n")),console.log(chalk.gray("ZoneIds: "+zoneIds.join(", "))));try{const result=await client.describePrefetchTasks(zoneIds);if(result.Response?.Error)console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`);else{console.log(chalk.green("\n✅ 查询成功!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`);const tasks=result.Response?.PrefetchTasks||[];if(tasks.length>0){const{default:Table}=await import("cli-table3"),table=new Table({head:[chalk.gray("状态"),chalk.gray("预热地址"),chalk.gray("时间")],colWidths:[8,60,30],chars:{mid:"","left-mid":"","mid-mid":"","right-mid":""}});tasks.forEach(task=>{const status="success"===task.Status?chalk.green("✓"):"processing"===task.Status?chalk.yellow("⏳"):chalk.red("✗"),target=task.Target||"unknown",createTime=task.CreateTime?task.CreateTime.replace("T"," ").replace("Z","").slice(0,19):"",displayTarget=target.length>57?target.slice(0,54)+"...":target;table.push([status,chalk.yellow(displayTarget),chalk.gray(createTime)])}),console.log(chalk.cyan("\n📋 预热任务记录:\n")),console.log(table.toString()),console.log(` 总计: ${chalk.yellow(result.Response?.TotalCount||tasks.length)} 条记录`)}else console.log(chalk.gray("\n 暂无预热记录\n"))}}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}console.log(""),await pauseToContinue()}(config,zoneIds)}(config);const answers=await inquirer.prompt([{type:"input",name:"urls",message:"请输入要预热的 URL (多个用空格分隔, 输入 :q 或按 Ctrl+C 返回):"}]);if(":q"===answers.urls||!answers.urls.trim())return;const urls=answers.urls.split(/\s+/).filter(u=>u.trim());let zoneId="*";if(config.domainIdList&&config.domainIdList.length>0){const zoneChoices=config.domainIdList.map(zone=>({name:zone.name||zone.id,value:zone.id})),zoneAnswers=await inquirer.prompt([{type:"list",name:"zone",message:"选择站点:",choices:["* (全部站点)",...zoneChoices]}]);"* (全部站点)"!==zoneAnswers.zone&&(zoneId=zoneAnswers.zone)}if(!(await inquirer.prompt([{type:"confirm",name:"confirm",message:`确认预热以下 URL?\n ${urls.join("\n ")}\n`,default:!0}])).confirm)return;await async function(config,urls,zoneId){const client=new EdgeOneClient(config.secretId,config.secretKey,config.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",config.mode),isDebug="debug"===config.mode;isDebug&&(console.log(chalk.cyan("\n🔥 预热任务\n")),console.log(chalk.gray("URL列表:")),urls.forEach(u=>console.log(` - ${chalk.yellow(u)}`)),console.log(`\nZone ID: ${chalk.green(zoneId)}`),console.log(""));try{const result=await client.createPrefetchTask({zoneId,urls});result.Response?.Error?(console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`)):(console.log(chalk.green("\n✅ 预热任务已提交!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`),result.Response?.JobId&&console.log(` JobId: ${chalk.yellow(result.Response.JobId)}`))}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}console.log(""),await pauseToContinue()}(config,urls,zoneId)}(config):(console.log(chalk.yellow("\n⚠️ 请先初始化配置\n")),await initConfig());break;case"zone-status":config?await async function(config){if(!config.domainIdList||0===config.domainIdList.length)return console.log(chalk.yellow("\n⚠️ 未配置站点列表,请先在配置中添加站点\n")),void await pauseToContinue();const answers=await inquirer.prompt([{type:"list",name:"action",message:"站点状态管理:",choices:[{name:"🔍 查看站点状态",value:"view"},{name:"🔘 修改站点状态",value:"modify"},new inquirer.Separator,{name:"← 返回",value:"back"}]}]);if("back"===answers.action)return;"view"===answers.action?await async function(config){const selectedZoneId=await selectZone(config,"选择要查看的站点:");if(!selectedZoneId)return;const selectedZone=config.domainIdList.find(z=>z.id===selectedZoneId),zoneDisplay=selectedZone?.name||selectedZoneId,client=new EdgeOneClient(config.secretId,config.secretKey,config.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",config.mode),isDebug="debug"===config.mode;isDebug&&(console.log(chalk.cyan("\n🔍 查看站点状态\n")),console.log(chalk.gray("API 参数:")),console.log(` Action: ${chalk.green("DescribeZones")}`),console.log(` ZoneIds: ${chalk.green([selectedZoneId])}`),console.log(""));try{const result=await client.describeZoneStatus({zoneId:selectedZoneId});if(result.Response?.Error)console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`);else{console.log(chalk.green("\n✅ 查询成功!")),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`);const zones=result.Response?.Zones||[];if(zones.length>0){const zone=zones[0],paused=zone.Paused,statusText=paused?"关闭":"开启",statusColor=paused?chalk.red:chalk.green;let accessType="未知";!zone.NSDetail||zone.CNAMEDetail||zone.DNSPodDetail?!zone.CNAMEDetail||zone.NSDetail||zone.DNSPodDetail?!zone.DNSPodDetail||zone.NSDetail||zone.CNAMEDetail||(accessType="DNSPod"):accessType="CNAME":accessType="NS";const nameServers=zone.NameServers||[],dnsServers=nameServers.length>0?nameServers.join(", "):"无",area={global:"全球加速",mainland:"中国大陆",overseas:"境外"}[zone.Area]||zone.Area||"未知";console.log(chalk.cyan("\n📋 站点状态:\n")),console.log(chalk.gray("─".repeat(40))),console.log(` 站点名称: ${chalk.yellow(zoneDisplay)}`),console.log(` 站点ID: ${chalk.yellow(selectedZoneId)}`),console.log(` 状态: ${statusColor(statusText)} (${paused})`),console.log(chalk.gray("─".repeat(40))),console.log(` 接入方式: ${chalk.yellow(accessType)}`),console.log(` DNS服务器: ${chalk.yellow(dnsServers)}`),console.log(` 加速区域: ${chalk.yellow(area)}`),console.log(chalk.gray("─".repeat(40)))}else console.log(chalk.gray("\n 未找到站点信息\n"))}}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}console.log(""),await pauseToContinue()}(config):"modify"===answers.action&&await async function(config){const selectedZoneId=await selectZone(config,"选择要修改的站点:");if(!selectedZoneId)return;const selectedZone=config.domainIdList.find(z=>z.id===selectedZoneId),zoneDisplay=selectedZone?.name||selectedZoneId,statusAnswers=await inquirer.prompt([{type:"list",name:"paused",message:`选择站点状态 (${zoneDisplay}):`,choices:[{name:"开启 (Paused: false)",value:!1},{name:"关闭 (Paused: true)",value:!0},new inquirer.Separator,{name:"← 返回",value:"back"}]}]);if("back"===statusAnswers.paused)return;const paused=statusAnswers.paused,statusText=paused?"关闭":"开启";if(!(await inquirer.prompt([{type:"confirm",name:"confirm",message:`确认将站点 ${zoneDisplay} 设置为 ${statusText}?`,default:!0}])).confirm)return;await async function(config,zoneId,paused,statusText){const client=new EdgeOneClient(config.secretId,config.secretKey,config.endpoint||"teo.tencentcloudapi.com","ap-guangzhou",config.mode),isDebug="debug"===config.mode;isDebug&&(console.log(chalk.cyan("\n🔘 修改站点状态\n")),console.log(chalk.gray("API 参数:")),console.log(` Action: ${chalk.green("ModifyZoneStatus")}`),console.log(` ZoneId: ${chalk.green(zoneId)}`),console.log(` Paused: ${chalk.green(paused)}`),console.log(""));try{const result=await client.modifyZoneStatus({zoneId,paused});result.Response?.Error?(console.log(chalk.red("\n❌ 请求失败:")),console.log(` 错误码: ${chalk.yellow(result.Response.Error.Code)}`),console.log(` 错误信息: ${chalk.yellow(result.Response.Error.Message)}`)):(console.log(chalk.green("\n✅ 站点状态已更新!")),console.log(` 状态: ${chalk.yellow(statusText)}`),console.log(` RequestId: ${chalk.yellow(result.Response?.RequestId)}`))}catch(error){console.log(chalk.red("\n❌ 请求异常:")),console.log(` ${error.message}`)}console.log(""),await pauseToContinue()}(config,selectedZoneId,paused,statusText)}(config)}(config):(console.log(chalk.yellow("\n⚠️ 请先初始化配置\n")),await initConfig())}}async function initConfig(){const existingConfig=readConfig();if(existingConfig){const{overwrite}=await inquirer.prompt([{type:"confirm",name:"overwrite",message:"配置已存在,是否覆盖?",default:!1}]);if(!overwrite)return}const defaultDomainList=existingConfig?.domainIdList?existingConfig.domainIdList.map(z=>z.name?`${z.id}:${z.name}`:z.id).join(", "):"",answers=await inquirer.prompt([{type:"input",name:"secretId",message:"请输入 SecretId:",default:existingConfig?.secretId||"",validate:input=>!!input.trim()||"SecretId 不能为空"},{type:"password",name:"secretKey",message:"请输入 SecretKey:",mask:"*",validate:input=>!!input.trim()||"SecretKey 不能为空"},{type:"input",name:"endpoint",message:"请输入接口请求域名:",default:existingConfig?.endpoint||"teo.tencentcloudapi.com"},{type:"list",name:"mode",message:"请选择运行模式:",choices:[{name:"生产模式 (不显示调试信息)",value:"production"},{name:"调试模式 (显示详细请求信息)",value:"debug"}],default:existingConfig?.mode||"production"},{type:"input",name:"domainIdList",message:"请输入站点列表,格式: id:备注(多个用逗号分隔,留空跳过):",default:defaultDomainList}]),{writeConfig}=await import("./commands/config.js");let domainIdList=[];answers.domainIdList&&answers.domainIdList.trim()&&(domainIdList=answers.domainIdList.split(",").map(item=>{if((item=item.trim()).includes(":")){const[id,name]=item.split(":");return{id:id.trim(),name:name.trim()}}return{id:item}}).filter(zone=>""!==zone.id)),writeConfig({secretId:answers.secretId,secretKey:answers.secretKey,endpoint:answers.endpoint,mode:answers.mode,domainIdList});const action=existingConfig?"更新":"保存";console.log(chalk.green(`\n✅ 配置已${action}\n`))}function maskString(str,showLength=4){return str?str.length<=2*showLength?str:str.slice(0,showLength)+"****"+str.slice(-showLength):"N/A"}async function selectZone(config,message){const zoneChoices=config.domainIdList.map(zone=>({name:zone.name||zone.id,value:zone.id})),zoneAnswers=await inquirer.prompt([{type:"list",name:"zone",message,choices:[...zoneChoices,new inquirer.Separator,{name:"← 返回",value:"back"}]}]);return"back"===zoneAnswers.zone?null:zoneAnswers.zone}
|
package/dist/utils/crypto.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
//# sourceMappingURL=utils\crypto.js.map
|
|
1
|
+
import crypto from"crypto";import os from"os";function getMachineId(){const platform=os.platform(),arch=os.arch(),hostname=os.hostname(),cpus=os.cpus(),machineInfo=`${platform}-${arch}-${hostname}-${cpus.length>0?cpus[0].model:""}`;return crypto.createHash("sha256").update(machineInfo).digest("hex")}function deriveKey(password,salt){return crypto.pbkdf2Sync(password,salt,1e5,32,"sha256")}export function encrypt(text){const machineId=getMachineId(),salt=crypto.randomBytes(64),key=deriveKey(machineId,salt),iv=crypto.randomBytes(16),cipher=crypto.createCipheriv("aes-256-gcm",key,iv);let encrypted=cipher.update(text,"utf8","hex");encrypted+=cipher.final("hex");const tag=cipher.getAuthTag();return Buffer.concat([salt,iv,tag,Buffer.from(encrypted,"hex")]).toString("base64")}export function decrypt(encryptedText){try{const combined=Buffer.from(encryptedText,"base64"),salt=combined.subarray(0,64),iv=combined.subarray(64,80),tag=combined.subarray(80,96),encrypted=combined.subarray(96),key=deriveKey(getMachineId(),salt),decipher=crypto.createDecipheriv("aes-256-gcm",key,iv);decipher.setAuthTag(tag);let decrypted=decipher.update(encrypted);return decrypted=Buffer.concat([decrypted,decipher.final()]),decrypted.toString("utf8")}catch(error){throw new Error("解密失败,配置文件可能已损坏或在其他机器上生成")}}export function isEncrypted(text){try{return Buffer.from(text,"base64").length>=96}catch{return!1}}
|
package/dist/utils/signature.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
import
|
|
2
|
-
//# sourceMappingURL=utils\signature.js.map
|
|
1
|
+
import crypto from"crypto";export function calculateSignature(options){const{secretId,secretKey,endpoint,action,requestBody,timestamp}=options,CanonicalRequest="POST\n/\n\n"+`content-type:application/json; charset=utf-8\nhost:${new URL(`https://${endpoint}`).host}\nx-tc-action:${action.toLowerCase()}\n`+"\ncontent-type;host;x-tc-action\n"+crypto.createHash("sha256").update(requestBody).digest("hex").toLowerCase(),dateStr=new Date(1e3*parseInt(timestamp)).toISOString().slice(0,10),CredentialScope=`${dateStr}/teo/tc3_request`,StringToSign="TC3-HMAC-SHA256\n"+timestamp+"\n"+CredentialScope+"\n"+crypto.createHash("sha256").update(CanonicalRequest).digest("hex").toLowerCase(),secretDate=crypto.createHmac("sha256","TC3"+secretKey).update(dateStr).digest(),secretService=crypto.createHmac("sha256",secretDate).update("teo").digest(),secretSigning=crypto.createHmac("sha256",secretService).update("tc3_request").digest();return`TC3-HMAC-SHA256 Credential=${secretId}/${CredentialScope}, SignedHeaders=content-type;host;x-tc-action, Signature=${crypto.createHmac("sha256",secretSigning).update(StringToSign).digest("hex")}`}
|
package/package.json
CHANGED
package/dist/api/client.d.ts
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* EdgeOne API 客户端
|
|
3
|
-
*/
|
|
4
|
-
import type { ConfigMode } from "../commands/config.js";
|
|
5
|
-
interface CreatePurgeTaskOptions {
|
|
6
|
-
zoneId?: string;
|
|
7
|
-
type: "purge_url" | "purge_prefix" | "purge_all";
|
|
8
|
-
targets?: string[];
|
|
9
|
-
url?: string;
|
|
10
|
-
}
|
|
11
|
-
interface CreatePrefetchTaskOptions {
|
|
12
|
-
zoneId?: string;
|
|
13
|
-
urls: string[];
|
|
14
|
-
}
|
|
15
|
-
interface ModifyZoneStatusOptions {
|
|
16
|
-
zoneId: string;
|
|
17
|
-
paused: boolean;
|
|
18
|
-
}
|
|
19
|
-
interface DescribeZoneStatusOptions {
|
|
20
|
-
zoneId: string;
|
|
21
|
-
}
|
|
22
|
-
interface CreatePurgeTaskResponse {
|
|
23
|
-
Response: {
|
|
24
|
-
RequestId: string;
|
|
25
|
-
JobId?: string;
|
|
26
|
-
Error?: {
|
|
27
|
-
Code: string;
|
|
28
|
-
Message: string;
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
export declare class EdgeOneClient {
|
|
33
|
-
private secretId;
|
|
34
|
-
private secretKey;
|
|
35
|
-
private endpoint;
|
|
36
|
-
private region;
|
|
37
|
-
private mode;
|
|
38
|
-
constructor(secretId: string, secretKey: string, endpoint: string, region?: string, mode?: ConfigMode);
|
|
39
|
-
/**
|
|
40
|
-
* 发送请求
|
|
41
|
-
*/
|
|
42
|
-
private request;
|
|
43
|
-
/**
|
|
44
|
-
* 创建清除缓存任务
|
|
45
|
-
*/
|
|
46
|
-
createPurgeTask(options: CreatePurgeTaskOptions): Promise<CreatePurgeTaskResponse>;
|
|
47
|
-
/**
|
|
48
|
-
* 查询清除缓存任务
|
|
49
|
-
*/
|
|
50
|
-
describePurgeTasks(zoneIds?: string[]): Promise<any>;
|
|
51
|
-
/**
|
|
52
|
-
* 创建预热任务
|
|
53
|
-
*/
|
|
54
|
-
createPrefetchTask(options: CreatePrefetchTaskOptions): Promise<CreatePurgeTaskResponse>;
|
|
55
|
-
/**
|
|
56
|
-
* 查询预热任务
|
|
57
|
-
*/
|
|
58
|
-
describePrefetchTasks(zoneIds?: string[]): Promise<any>;
|
|
59
|
-
/**
|
|
60
|
-
* 修改站点状态
|
|
61
|
-
*/
|
|
62
|
-
modifyZoneStatus(options: ModifyZoneStatusOptions): Promise<CreatePurgeTaskResponse>;
|
|
63
|
-
/**
|
|
64
|
-
* 查询站点状态
|
|
65
|
-
*/
|
|
66
|
-
describeZoneStatus(options: DescribeZoneStatusOptions): Promise<any>;
|
|
67
|
-
}
|
|
68
|
-
export {};
|
|
69
|
-
//# sourceMappingURL=client.d.ts.map
|
package/dist/api/client.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGxD,UAAU,sBAAsB;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,WAAW,GAAG,cAAc,GAAG,WAAW,CAAC;IACjD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,UAAU,yBAAyB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,UAAU,uBAAuB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,UAAU,yBAAyB;IACjC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE;QACR,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE;YACN,IAAI,EAAE,MAAM,CAAC;YACb,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAa;gBAEb,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,SAAiB,EAAE,IAAI,GAAE,UAAyB;IAQ3H;;OAEG;YACW,OAAO;IAuDrB;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAWxF;;OAEG;IACG,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA8D1D;;OAEG;IACG,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAS9F;;OAEG;IACG,qBAAqB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;IA8D7D;;OAEG;IACG,gBAAgB,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IAS1F;;OAEG;IACG,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,GAAG,CAAC;CAY3E"}
|
package/dist/api/client.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\api\\client.js","names":["calculateSignature","EdgeOneClient","secretId","secretKey","endpoint","region","mode","constructor","this","request","action","version","params","timestamp","Math","floor","Date","now","toString","requestBody","JSON","stringify","requestHeaders","Authorization","console","log","response","fetch","method","headers","body","result","json","error","createPurgeTask","options","ZoneId","zoneId","Type","type","Method","Targets","targets","describePurgeTasks","zoneIds","toISOStringWithTimezone","date","getFullYear","String","getMonth","padStart","getDate","getHours","getMinutes","getSeconds","baseParams","StartTime","getTime","EndTime","length","requests","map","results","Promise","all","merged","Response","allTasks","Error","PurgeTasks","push","createPrefetchTask","urls","describePrefetchTasks","PrefetchTasks","modifyZoneStatus","Paused","paused","describeZoneStatus","Filters","Name","Values"],"sources":["../../src/api/client.ts"],"mappings":"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","ignoreList":[]}
|
package/dist/api/signer.d.ts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
interface SignOptions {
|
|
2
|
-
method: string;
|
|
3
|
-
host: string;
|
|
4
|
-
path: string;
|
|
5
|
-
queryParams?: Record<string, any>;
|
|
6
|
-
bodyParams?: Record<string, any>;
|
|
7
|
-
headers?: Record<string, string>;
|
|
8
|
-
secretId: string;
|
|
9
|
-
secretKey: string;
|
|
10
|
-
service: string;
|
|
11
|
-
region?: string;
|
|
12
|
-
}
|
|
13
|
-
export declare class Signer {
|
|
14
|
-
/**
|
|
15
|
-
* 计算 HMAC-SHA256
|
|
16
|
-
*/
|
|
17
|
-
private static hmacSha256;
|
|
18
|
-
/**
|
|
19
|
-
* 计算 SHA256
|
|
20
|
-
*/
|
|
21
|
-
private static sha256;
|
|
22
|
-
/**
|
|
23
|
-
* 计算 SHA256 hex
|
|
24
|
-
*/
|
|
25
|
-
private static sha256Hex;
|
|
26
|
-
/**
|
|
27
|
-
* 获取日期
|
|
28
|
-
*/
|
|
29
|
-
private static getDate;
|
|
30
|
-
/**
|
|
31
|
-
* 构建 Query String
|
|
32
|
-
*/
|
|
33
|
-
private static buildQueryString;
|
|
34
|
-
/**
|
|
35
|
-
* URI 编码(RFC3986)
|
|
36
|
-
*/
|
|
37
|
-
private static _encodeURIComponent;
|
|
38
|
-
/**
|
|
39
|
-
* 签名
|
|
40
|
-
*/
|
|
41
|
-
static sign(options: SignOptions): {
|
|
42
|
-
headers: Record<string, string>;
|
|
43
|
-
body: string;
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
export {};
|
|
47
|
-
//# sourceMappingURL=signer.d.ts.map
|
package/dist/api/signer.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/api/signer.ts"],"names":[],"mappings":"AAKA,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAClC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,MAAM;IACjB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAIzB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,MAAM;IAIrB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IAIxB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,OAAO;IAKtB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAe/B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAIlC;;OAEG;IACH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG;QAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;CA6DrF"}
|
package/dist/api/signer.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\api\\signer.js","names":["crypto","Signer","hmacSha256","key","message","createHmac","update","digest","sha256","createHash","sha256Hex","getDate","timestamp","Date","toISOString","substr","buildQueryString","params","Object","keys","sort","map","value","Array","isArray","v","this","_encodeURIComponent","String","join","str","encodeURIComponent","replace","c","charCodeAt","toString","toUpperCase","sign","options","method","host","path","queryParams","bodyParams","secretId","secretKey","service","region","queryString","body","JSON","stringify","contentType","Math","floor","now","date","signedHeaders","canonicalRequest","algorithm","credentialScope","stringToSign","secretDate","Buffer","from","secretService","secretSigning","headers","Authorization","Host","Action","Version"],"sources":["../../src/api/signer.ts"],"mappings":"OAGOA,MAAY,gBAeb,MAAOC,OAIH,iBAAOC,CAAWC,EAAaC,GACrC,OAAOJ,EAAOK,WAAW,SAAUF,GAAKG,OAAOF,GAASG,QAC1D,CAKQ,aAAOC,CAAOJ,GACpB,OAAOJ,EAAOS,WAAW,UAAUH,OAAOF,GAASG,QACrD,CAKQ,gBAAOG,CAAUN,GACvB,OAAOJ,EAAOS,WAAW,UAAUH,OAAOF,GAASG,OAAO,MAC5D,CAKQ,cAAOI,CAAQC,GAErB,OADa,IAAIC,KAAiB,IAAZD,GACVE,cAAcC,OAAO,EAAG,GACtC,CAKQ,uBAAOC,CAAiBC,GAE9B,OADmBC,OAAOC,KAAKF,GAAQG,OAEpCC,IAAKlB,IACJ,MAAMmB,EAAQL,EAAOd,GACrB,OAAIoB,MAAMC,QAAQF,GACTA,EACJD,IAAKI,GAAM,GAAGC,KAAKC,oBAAoBxB,MAAQuB,KAAKC,oBAAoBC,OAAOH,OAC/EI,KAAK,KAEH,GAAGH,KAAKC,oBAAoBxB,MAAQuB,KAAKC,oBAAoBC,OAAON,QAE5EO,KAAK,IACV,CAKQ,0BAAOF,CAAoBG,GACjC,OAAOC,mBAAmBD,GAAKE,QAAQ,WAAaC,GAAM,IAAIA,EAAEC,WAAW,GAAGC,SAAS,IAAIC,gBAC7F,CAKA,WAAOC,CAAKC,GACV,MAAMC,OACJA,EAAMC,KACNA,EAAIC,KACJA,EAAIC,YACJA,EAAc,GAAEC,WAChBA,EAAa,GAAEC,SACfA,EAAQC,UACRA,EAASC,QACTA,EAAOC,OACPA,EAAS,gBACPT,EAGEU,EAActB,KAAKV,iBAAiB0B,GAGpCO,EAAON,EAAaO,KAAKC,UAAUR,GAAc,GACjDS,EAAc,mBAGdxC,EAAYyC,KAAKC,MAAMzC,KAAK0C,MAAQ,KACpCC,EAAO9B,KAAKf,QAAQC,GAOpB6C,EAAgB,oBAEhBC,EAAmB,GANCnB,MACLE,MACQO,MACJ,gBAAgBI,WAAqBZ,UAGmDiB,MADpF/B,KAAKhB,UAAUuC,KAItCU,EAAY,kBACZC,EAAkB,GAAGJ,KAAQV,YAE7Be,EAAe,GAAGF,MAAc/C,MAAcgD,MADrBlC,KAAKhB,UAAUgD,KAIxCI,EAAapC,KAAKxB,WAAW6D,OAAOC,KAAK,MAAMnB,IAAa,SAAUW,GACtES,EAAgBvC,KAAKxB,WAAW4D,EAAYhB,GAC5CoB,EAAgBxC,KAAKxB,WAAW+D,EAAe,WAiBrD,MAAO,CAAEE,QAVO,CACdC,cAJoB,GAAGT,gBAAwBf,KAAYgB,oBAAkCH,gBAH7E/B,KAAKxB,WAAWgE,EAAeL,GAAc1B,SAAS,SAQtE,eAAgBiB,EAChBiB,KAAM7B,EACN,cAAeG,EAAW2B,QAAU,GACpC,iBAAkB1D,EAAUuB,WAC5B,eAAgBQ,EAAW4B,SAAW,GACtC,cAAexB,GAGCE,OACpB","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/commands/completion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAoEjD"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{Command as o}from"commander";export function createCompletionCommand(){const e=new o("completion").description("生成 shell 自动补全脚本").option("--shell <type>","Shell 类型 (bash, zsh, fish)","bash").action(o=>{o.shell,console.log('\n# 安装说明\n\n## Bash\n将以下内容添加到 ~/.bashrc 或 ~/.bash_profile:\n eval "$(edgeone-cli completion --shell bash)"\n\n## Zsh\n将以下内容添加到 ~/.zshrc:\n eval "$(edgeone-cli completion --shell zsh)"\n\n## Fish\n将以下内容添加到 ~/.config/fish/config.fish:\n edgeone-cli completion --shell fish | source\n\n## 使用方法\n安装后,输入 edgeone-cli 然后按 Tab 键即可查看可用命令。\n ')});return e.command("install").description("安装自动补全到系统").option("--shell <type>","Shell 类型 (bash, zsh, fish)","bash").action(async o=>{try{const o=await import("tabtab");await o.install({name:"edgeone-cli",completer:"edgeone-cli"}),console.log("✅ 自动补全已安装"),console.log("请将以下内容添加到你的 shell 配置文件中:"),console.log(' Bash (~/.bashrc): eval "$(_EDGEONE_CLI_COMPLETION_DATA=bs b)";'),console.log(' Zsh (~/.zshrc): eval "$(_EDGEONE_CLI_COMPLETION_DATA=zsh) b");'),console.log(" Fish (~/.config/fish/config.fish): _EDGEONE_CLI_COMPLETION_DATA=fish source;")}catch(o){console.error("❌ 安装失败:",o.message)}}),e.command("uninstall").description("卸载自动补全").option("--shell <type>","Shell 类型 (bash, zsh, fish)","bash").action(async o=>{try{const o=await import("tabtab");await o.uninstall({name:"edgeone-cli"}),console.log("✅ 自动补全已卸载")}catch(o){console.error("❌ 卸载失败:",o.message)}}),e}
|
|
2
|
-
//# sourceMappingURL=commands\completion.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\commands\\completion.js","names":["Command","createCompletionCommand","completionCmd","description","option","action","options","shell","console","log","command","async","tabtabModule","import","install","name","completer","error","message","uninstall"],"sources":["../../src/commands/completion.ts"],"mappings":"kBAASA,MAAe,mBAMlB,SAAUC,0BACd,MAAMC,EAAgB,IAAIF,EAAQ,cAC/BG,YAAY,mBACZC,OAAO,iBAAkB,6BAA8B,QACvDC,OAAQC,IACOA,EAAQC,MAEtBC,QAAQC,IAAI,0VA4DhB,OAvCAP,EACGQ,QAAQ,WACRP,YAAY,aACZC,OAAO,iBAAkB,6BAA8B,QACvDC,OAAOM,UACN,IAEE,MAAMC,QAAqBC,OAAO,gBAC5BD,EAAaE,QAAQ,CACzBC,KAAM,cACNC,UAAW,gBAEbR,QAAQC,IAAI,aACZD,QAAQC,IAAI,4BACZD,QAAQC,IAAI,2EACZD,QAAQC,IAAI,6EACZD,QAAQC,IAAI,iFACd,CAAE,MAAOQ,GACPT,QAAQS,MAAM,UAAWA,EAAMC,QACjC,IAIJhB,EACGQ,QAAQ,aACRP,YAAY,UACZC,OAAO,iBAAkB,6BAA8B,QACvDC,OAAOM,UACN,IACE,MAAMC,QAAqBC,OAAO,gBAC5BD,EAAaO,UAAU,CAC3BJ,KAAM,gBAERP,QAAQC,IAAI,YACd,CAAE,MAAOQ,GACPT,QAAQS,MAAM,UAAWA,EAAMC,QACjC,IAGGhB,CACT","ignoreList":[]}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Command } from "commander";
|
|
2
|
-
type ConfigMode = "debug" | "production";
|
|
3
|
-
export interface ZoneConfig {
|
|
4
|
-
id: string;
|
|
5
|
-
name?: string;
|
|
6
|
-
}
|
|
7
|
-
interface Config {
|
|
8
|
-
secretId: string;
|
|
9
|
-
secretKey: string;
|
|
10
|
-
endpoint: string;
|
|
11
|
-
mode: ConfigMode;
|
|
12
|
-
domainIdList: ZoneConfig[];
|
|
13
|
-
}
|
|
14
|
-
declare const CONFIG_FILE: string;
|
|
15
|
-
/**
|
|
16
|
-
* 确保配置目录存在
|
|
17
|
-
*/
|
|
18
|
-
export declare function ensureConfigDir(): void;
|
|
19
|
-
/**
|
|
20
|
-
* 读取配置(自动解密,自动迁移旧格式)
|
|
21
|
-
*/
|
|
22
|
-
export declare function readConfig(): Config | null;
|
|
23
|
-
/**
|
|
24
|
-
* 写入配置(自动加密 SecretKey)
|
|
25
|
-
*/
|
|
26
|
-
export declare function writeConfig(config: Config): void;
|
|
27
|
-
declare const configCmd: Command;
|
|
28
|
-
export default configCmd;
|
|
29
|
-
export { CONFIG_FILE };
|
|
30
|
-
export type { ConfigMode };
|
|
31
|
-
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,KAAK,UAAU,GAAG,OAAO,GAAG,YAAY,CAAC;AAEzC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAWD,UAAU,MAAM;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE,UAAU,EAAE,CAAC;CAC5B;AAGD,QAAA,MAAM,WAAW,QAAuC,CAAC;AAEzD;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAItC;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,GAAG,IAAI,CAgD1C;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAgBhD;AAyCD,QAAA,MAAM,SAAS,SAAqD,CAAC;AA+MrE,eAAe,SAAS,CAAC;AACzB,OAAO,EAAE,WAAW,EAAE,CAAC;AACvB,YAAY,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\commands\\config.js","names":["chalk","Command","fs","inquirer","os","path","decrypt","encrypt","isEncrypted","CONFIG_DIR","join","homedir","CONFIG_FILE","ensureConfigDir","existsSync","mkdirSync","recursive","readConfig","content","readFileSync","stored","JSON","parse","secretKey","needsMigration","encrypted","domainIdList","length","map","id","config","secretId","endpoint","mode","writeConfig","console","log","gray","encryptedSecretKey","writeFileSync","stringify","maskString","str","showLength","slice","configCmd","description","command","action","async","existingConfig","yellow","repeat","green","confirm","prompt","type","name","message","default","cyan","answers","validate","input","trim","mask","choices","value","domainIdInput","split","item","includes","filter","zone","modeText","modeColor","forEach","idx","display","unlinkSync","field","when","domainIds"],"sources":["../../src/commands/config.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Command } from "commander";
|
|
2
|
-
/**
|
|
3
|
-
* 创建清除缓存命令
|
|
4
|
-
*/
|
|
5
|
-
export declare function createPurgeCommand(): Command;
|
|
6
|
-
/**
|
|
7
|
-
* 创建预热命令
|
|
8
|
-
*/
|
|
9
|
-
export declare function createPrefetchCommand(): Command;
|
|
10
|
-
/**
|
|
11
|
-
* 创建历史记录命令
|
|
12
|
-
*/
|
|
13
|
-
export declare function createHistoryCommand(): Command;
|
|
14
|
-
//# sourceMappingURL=edgeone.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"edgeone.d.ts","sourceRoot":"","sources":["../../src/commands/edgeone.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA6BpC;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,OAAO,CAkG5C;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CA0D/C;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAmQ9C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\commands\\edgeone.js","names":["chalk","Table","Command","inquirer","EdgeOneClient","readConfig","DEFAULT_ZONE_ID","PurgeType","createPurgeCommand","description","option","action","async","options","all","dir","url","zone","type","targets","All","Prefix","length","console","log","yellow","gray","Url","config","secretId","secretKey","red","endpoint","mode","isDebug","cyan","forEach","u","green","JSON","stringify","client","result","createPurgeTask","zoneId","Response","Error","Code","Message","RequestId","JobId","error","message","createPrefetchCommand","argument","urls","createPrefetchTask","createHistoryCommand","historyCmd","on","purgeHistoryCmd","domainIdList","zoneIds","id","zoneChoices","map","z","name","value","zones","prompt","choices","validate","input","join","describePurgeTasks","tasks","Tasks","table","head","colWidths","chars","mid","task","status","Status","target","Target","Type","createTime","CreateTime","replace","slice","displayTarget","push","toString","TotalCount","successCount","filter","failedCount","prefetchHistoryCmd","describePrefetchTasks","PrefetchTasks","processingCount","addCommand"],"sources":["../../src/commands/edgeone.ts"],"mappings":"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","ignoreList":[]}
|
package/dist/completion.d.ts
DELETED
package/dist/completion.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../src/completion.ts"],"names":[],"mappings":""}
|
package/dist/completion.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import e,{parseEnv as r}from"tabtab";const t=["config","purge","prefetch","history","completion","help"],n=["init","show","edit","remove"],o=["purge","prefetch"],i=["-h","--help","-v","--version"],l={purge:["-a","--all","-d","--dir","-u","--url","-z","--zone"],prefetch:["-z","--zone"],history:[],"history-purge":["-z","--zone"],"history-prefetch":["-z","--zone"],config:[],completion:["--shell"]};e({name:"edgeone-cli",completer:async function(e){const s=r(process.env),c=(s.line||"").split(" ").filter(e=>""!==e);if(s.lastPartial,1===s.words||1===c.length&&"edgeone-cli"===c[0])return t;const h=c[1],p=c.slice(1);if("config"===h&&(1===p.length||2===p.length&&"config"===p[1]))return n;if("history"===h){if(1===p.length||2===p.length&&"history"===p[1])return o;if(p.length>=3){const e=p[2];if("purge"===e)return l["history-purge"]||[];if("prefetch"===e)return l["history-prefetch"]||[]}}return"purge"===h?l.purge||[]:"prefetch"===h?l.prefetch||[]:"completion"===h?["install","uninstall","--shell"]:i}}).catch(e=>{process.env.COMP_LINE&&console.error("补全错误:",e.message)});
|
|
3
|
-
//# sourceMappingURL=completion.js.map
|
package/dist/completion.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\completion.js","names":["tabtab","parseEnv","commands","configSubcommands","historySubcommands","globalOptions","commandOptions","purge","prefetch","history","config","completion","name","completer","async","payload","env","process","words","line","split","filter","w","lastPartial","length","cmd","prevWords","slice","historyCmd","catch","err","COMP_LINE","console","error","message"],"sources":["../src/completion.ts"],"mappings":";OACOA,eAAUC,MAAqB,SAItC,MAAMC,EAAW,CACf,SACA,QACA,WACA,UACA,aACA,QAGIC,EAAoB,CAAC,OAAQ,OAAQ,OAAQ,UAC7CC,EAAqB,CAAC,QAAS,YAE/BC,EAAgB,CACpB,KAAM,SACN,KAAM,aAGFC,EAA2C,CAC/CC,MAAS,CAAC,KAAM,QAAS,KAAM,QAAS,KAAM,QAAS,KAAM,UAC7DC,SAAY,CAAC,KAAM,UACnBC,QAAW,GACX,gBAAiB,CAAC,KAAM,UACxB,mBAAoB,CAAC,KAAM,UAC3BC,OAAU,GACVC,WAAc,CAAC,YA4DjBX,EAAO,CACLY,KAAM,cACNC,UA1DFC,eAAyBC,GACvB,MAAMC,EAAMf,EAASgB,QAAQD,KAEvBE,GADOF,EAAIG,MAAQ,IACNC,MAAM,KAAKC,OAAQC,GAAoB,KAANA,GAIpD,GAHoBN,EAAIO,YAGN,IAAdP,EAAIE,OAAiC,IAAjBA,EAAMM,QAA6B,gBAAbN,EAAM,GAClD,OAAOhB,EAGT,MAAMuB,EAAMP,EAAM,GACZQ,EAAYR,EAAMS,MAAM,GAG9B,GAAY,WAARF,IACuB,IAArBC,EAAUF,QAAsC,IAArBE,EAAUF,QAAiC,WAAjBE,EAAU,IACjE,OAAOvB,EAKX,GAAY,YAARsB,EAAmB,CACrB,GAAyB,IAArBC,EAAUF,QAAsC,IAArBE,EAAUF,QAAiC,YAAjBE,EAAU,GACjE,OAAOtB,EAET,GAAIsB,EAAUF,QAAU,EAAG,CACzB,MAAMI,EAAaF,EAAU,GAC7B,GAAmB,UAAfE,EACF,OAAOtB,EAAe,kBAAoB,GACrC,GAAmB,aAAfsB,EACT,OAAOtB,EAAe,qBAAuB,EAEjD,CACF,CAGA,MAAY,UAARmB,EACKnB,EAAsBC,OAAK,GAIxB,aAARkB,EACKnB,EAAyBE,UAAK,GAI3B,eAARiB,EACK,CAAC,UAAW,YAAa,WAI3BpB,CACT,IAMGwB,MAAOC,IAEHb,QAAQD,IAAIe,WAGjBC,QAAQC,MAAM,QAASH,EAAII","ignoreList":[]}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 预热任务
|
|
3
|
-
*/
|
|
4
|
-
export interface CreatePrefetchTaskOptions {
|
|
5
|
-
urls: string[];
|
|
6
|
-
zoneId?: string;
|
|
7
|
-
}
|
|
8
|
-
export interface ListPrefetchTasksOptions {
|
|
9
|
-
zoneId?: string;
|
|
10
|
-
limit?: number;
|
|
11
|
-
offset?: number;
|
|
12
|
-
}
|
|
13
|
-
export interface PrefetchTask {
|
|
14
|
-
taskId: string;
|
|
15
|
-
status: string;
|
|
16
|
-
createTime: string;
|
|
17
|
-
}
|
|
18
|
-
export declare function createPrefetchTask(options: CreatePrefetchTaskOptions): Promise<void>;
|
|
19
|
-
export declare function listPrefetchTasks(options: ListPrefetchTasksOptions): Promise<void>;
|
|
20
|
-
export declare function getPrefetchTask(taskId: string, options: {
|
|
21
|
-
zoneId?: string;
|
|
22
|
-
}): Promise<void>;
|
|
23
|
-
//# sourceMappingURL=prefetch.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"prefetch.d.ts","sourceRoot":"","sources":["../../../src/edgeone/tasks/prefetch.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAG1F;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAGxF;AAED,wBAAsB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAGjG"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\edgeone\\tasks\\prefetch.js","names":["async","createPrefetchTask","options","console","log","listPrefetchTasks","getPrefetchTask","taskId"],"sources":["../../../src/edgeone/tasks/prefetch.ts"],"mappings":"OAqBOA,eAAeC,mBAAmBC,GAEvCC,QAAQC,IAAI,SAAUF,EACxB,QAEOF,eAAeK,kBAAkBH,GAEtCC,QAAQC,IAAI,WAAYF,EAC1B,QAEOF,eAAeM,gBAAgBC,EAAgBL,GAEpDC,QAAQC,IAAI,WAAYG,EAAQL,EAClC","ignoreList":[]}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 清除缓存任务
|
|
3
|
-
*/
|
|
4
|
-
export interface CreatePurgeTaskOptions {
|
|
5
|
-
urls: string[];
|
|
6
|
-
zoneId?: string;
|
|
7
|
-
}
|
|
8
|
-
export interface ListPurgeTasksOptions {
|
|
9
|
-
zoneId?: string;
|
|
10
|
-
limit?: number;
|
|
11
|
-
offset?: number;
|
|
12
|
-
}
|
|
13
|
-
export interface PurgeTask {
|
|
14
|
-
taskId: string;
|
|
15
|
-
status: string;
|
|
16
|
-
createTime: string;
|
|
17
|
-
}
|
|
18
|
-
export declare function createPurgeTask(options: CreatePurgeTaskOptions): Promise<void>;
|
|
19
|
-
export declare function listPurgeTasks(options: ListPurgeTasksOptions): Promise<void>;
|
|
20
|
-
export declare function getPurgeTask(taskId: string, options: {
|
|
21
|
-
zoneId?: string;
|
|
22
|
-
}): Promise<void>;
|
|
23
|
-
//# sourceMappingURL=purge.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"purge.d.ts","sourceRoot":"","sources":["../../../src/edgeone/tasks/purge.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAGpF;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAGlF;AAED,wBAAsB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9F"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\edgeone\\tasks\\purge.js","names":["async","createPurgeTask","options","console","log","listPurgeTasks","getPurgeTask","taskId"],"sources":["../../../src/edgeone/tasks/purge.ts"],"mappings":"OAqBOA,eAAeC,gBAAgBC,GAEpCC,QAAQC,IAAI,WAAYF,EAC1B,QAEOF,eAAeK,eAAeH,GAEnCC,QAAQC,IAAI,aAAcF,EAC5B,QAEOF,eAAeM,aAAaC,EAAgBL,GAEjDC,QAAQC,IAAI,aAAcG,EAAQL,EACpC","ignoreList":[]}
|
package/dist/errors/codes.d.ts
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 错误码模块
|
|
3
|
-
* 提供错误码和描述互相转换的功能
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* EdgeOne 错误码枚举
|
|
7
|
-
*/
|
|
8
|
-
export declare enum ErrorCode {
|
|
9
|
-
InternalError_BackendError = "InternalError.BackendError",
|
|
10
|
-
InternalError_DomainConfig = "InternalError.DomainConfig",
|
|
11
|
-
InternalError_ProxyServer = "InternalError.ProxyServer",
|
|
12
|
-
InternalError_QuotaSystem = "InternalError.QuotaSystem",
|
|
13
|
-
InvalidParameter_DomainNotFound = "InvalidParameter.DomainNotFound",
|
|
14
|
-
InvalidParameter_ParameterError = "InvalidParameter.ParameterError",
|
|
15
|
-
InvalidParameter_Target = "InvalidParameter.Target",
|
|
16
|
-
InvalidParameter_TaskNotGenerated = "InvalidParameter.TaskNotGenerated",
|
|
17
|
-
InvalidParameter_UploadUrl = "InvalidParameter.UploadUrl",
|
|
18
|
-
LimitExceeded_BatchQuota = "LimitExceeded.BatchQuota",
|
|
19
|
-
LimitExceeded_DailyQuota = "LimitExceeded.DailyQuota",
|
|
20
|
-
LimitExceeded_PackNotAllow = "LimitExceeded.PackNotAllow",
|
|
21
|
-
UnauthorizedOperation_CamUnauthorized = "UnauthorizedOperation.CamUnauthorized",
|
|
22
|
-
UnauthorizedOperation_NoPermission = "UnauthorizedOperation.NoPermission",
|
|
23
|
-
UnauthorizedOperation_Unknown = "UnauthorizedOperation.Unknown"
|
|
24
|
-
}
|
|
25
|
-
/**
|
|
26
|
-
* 错误码工具类
|
|
27
|
-
*/
|
|
28
|
-
export declare class ErrorCodeUtil {
|
|
29
|
-
/**
|
|
30
|
-
* 根据错误码获取描述
|
|
31
|
-
*/
|
|
32
|
-
static getMessage(code: string | ErrorCode): string;
|
|
33
|
-
/**
|
|
34
|
-
* 根据描述获取错误码(支持模糊匹配)
|
|
35
|
-
*/
|
|
36
|
-
static getCode(message: string): ErrorCode | null;
|
|
37
|
-
/**
|
|
38
|
-
* 获取所有错误码列表
|
|
39
|
-
*/
|
|
40
|
-
static getAllCodes(): ErrorCode[];
|
|
41
|
-
/**
|
|
42
|
-
* 检查是否为有效错误码
|
|
43
|
-
*/
|
|
44
|
-
static isValidCode(code: string): boolean;
|
|
45
|
-
/**
|
|
46
|
-
* 格式化错误信息
|
|
47
|
-
*/
|
|
48
|
-
static format(code: string | ErrorCode, customMessage?: string): string;
|
|
49
|
-
/**
|
|
50
|
-
* 获取错误码分类
|
|
51
|
-
*/
|
|
52
|
-
static getCategory(code: string | ErrorCode): string;
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* 错误类
|
|
56
|
-
*/
|
|
57
|
-
export declare class EdgeOneError extends Error {
|
|
58
|
-
code: ErrorCode;
|
|
59
|
-
details?: Record<string, unknown>;
|
|
60
|
-
constructor(code: ErrorCode, message?: string, details?: Record<string, unknown>);
|
|
61
|
-
toString(): string;
|
|
62
|
-
/**
|
|
63
|
-
* 获取错误分类
|
|
64
|
-
*/
|
|
65
|
-
getCategory(): string;
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=codes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"codes.d.ts","sourceRoot":"","sources":["../../src/errors/codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,oBAAY,SAAS;IAEnB,0BAA0B,+BAA+B;IACzD,0BAA0B,+BAA+B;IACzD,yBAAyB,8BAA8B;IACvD,yBAAyB,8BAA8B;IAGvD,+BAA+B,oCAAoC;IACnE,+BAA+B,oCAAoC;IACnE,uBAAuB,4BAA4B;IACnD,iCAAiC,sCAAsC;IACvE,0BAA0B,+BAA+B;IAGzD,wBAAwB,6BAA6B;IACrD,wBAAwB,6BAA6B;IACrD,0BAA0B,+BAA+B;IAGzD,qCAAqC,0CAA0C;IAC/E,kCAAkC,uCAAuC;IACzE,6BAA6B,kCAAkC;CAChE;AA0BD;;GAEG;AACH,qBAAa,aAAa;IACxB;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM;IAInD;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAgBjD;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,SAAS,EAAE;IAIjC;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAIzC;;OAEG;IACH,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM;IAKvE;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM;CAgBrD;AAED;;GAEG;AACH,qBAAa,YAAa,SAAQ,KAAK;IACrC,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAEtB,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAOhF,QAAQ,IAAI,MAAM;IAIlB;;OAEG;IACH,WAAW,IAAI,MAAM;CAGtB"}
|
package/dist/errors/codes.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\errors\\codes.js","names":["ErrorCode","ErrorMessages","InternalError_BackendError","InternalError_DomainConfig","InternalError_ProxyServer","InternalError_QuotaSystem","InvalidParameter_DomainNotFound","InvalidParameter_ParameterError","InvalidParameter_Target","InvalidParameter_TaskNotGenerated","InvalidParameter_UploadUrl","LimitExceeded_BatchQuota","LimitExceeded_DailyQuota","LimitExceeded_PackNotAllow","UnauthorizedOperation_CamUnauthorized","UnauthorizedOperation_NoPermission","UnauthorizedOperation_Unknown","ErrorCodeUtil","getMessage","code","getCode","message","exactMatch","Object","entries","find","msg","fuzzyMatch","includes","getAllCodes","values","isValidCode","format","customMessage","this","getCategory","codeStr","startsWith","EdgeOneError","Error","details","constructor","super","name","toString"],"sources":["../../src/errors/codes.ts"],"mappings":"OAQA,IAAYA,WAAZ,SAAYA,GAEVA,EAAA,wDACAA,EAAA,wDACAA,EAAA,sDACAA,EAAA,sDAGAA,EAAA,kEACAA,EAAA,kEACAA,EAAA,kDACAA,EAAA,sEACAA,EAAA,wDAGAA,EAAA,oDACAA,EAAA,oDACAA,EAAA,wDAGAA,EAAA,8EACAA,EAAA,wEACAA,EAAA,6DACD,CAvBD,CAAYA,sBAAS,KA4BrB,MAAMC,EAA2C,CAC/C,CAACD,UAAUE,4BAA6B,UACxC,CAACF,UAAUG,4BAA6B,UACxC,CAACH,UAAUI,2BAA4B,eACvC,CAACJ,UAAUK,2BAA4B,YAEvC,CAACL,UAAUM,iCAAkC,gBAC7C,CAACN,UAAUO,iCAAkC,8CAC7C,CAACP,UAAUQ,yBAA0B,UACrC,CAACR,UAAUS,mCAAoC,UAC/C,CAACT,UAAUU,4BAA6B,cAExC,CAACV,UAAUW,0BAA2B,gBACtC,CAACX,UAAUY,0BAA2B,gBACtC,CAACZ,UAAUa,4BAA6B,WAExC,CAACb,UAAUc,uCAAwC,WACnD,CAACd,UAAUe,oCAAqC,wBAChD,CAACf,UAAUgB,+BAAgC,uBAMvC,MAAOC,cAIX,iBAAOC,CAAWC,GAChB,OAAOlB,EAAckB,IAAsB,MAC7C,CAKA,cAAOC,CAAQC,GAEb,MAAMC,EAAaC,OAAOC,QAAQvB,GAAewB,KAC/C,EAAE,CAAEC,KAASA,IAAQL,GAEvB,GAAIC,EACF,OAAOA,EAAW,GAIpB,MAAMK,EAAaJ,OAAOC,QAAQvB,GAAewB,KAC/C,EAAE,CAAEC,KAASA,EAAIE,SAASP,IAAYA,EAAQO,SAASF,IAEzD,OAAOC,EAAcA,EAAW,GAAmB,IACrD,CAKA,kBAAOE,GACL,OAAON,OAAOO,OAAO9B,UACvB,CAKA,kBAAO+B,CAAYZ,GACjB,OAAOI,OAAOO,OAAO9B,WAAW4B,SAAST,EAC3C,CAKA,aAAOa,CAAOb,EAA0Bc,GACtC,MAAMZ,EAAUa,KAAKhB,WAAWC,GAChC,OAAOc,EAAgB,IAAId,MAASc,IAAkB,IAAId,MAASE,GACrE,CAKA,kBAAOc,CAAYhB,GACjB,MAAMiB,EAAUjB,EAChB,OAAIiB,EAAQC,WAAW,iBACd,OAELD,EAAQC,WAAW,oBACd,OAELD,EAAQC,WAAW,iBACd,OAELD,EAAQC,WAAW,yBACd,QAEF,MACT,SAMI,MAAOC,qBAAqBC,MAChCpB,KACAqB,QAEA,WAAAC,CAAYtB,EAAiBE,EAAkBmB,GAC7CE,MAAMrB,GAAWJ,cAAcC,WAAWC,IAC1Ce,KAAKS,KAAO,eACZT,KAAKf,KAAOA,EACZe,KAAKM,QAAUA,CACjB,CAEA,QAAAI,GACE,OAAO3B,cAAce,OAAOE,KAAKf,KAAMe,KAAKb,QAC9C,CAKA,WAAAc,GACE,OAAOlB,cAAckB,YAAYD,KAAKf,KACxC","ignoreList":[]}
|
package/dist/index.d.ts
DELETED
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\index.js","names":["chalk","program","configCmd","createHistoryCommand","createPrefetchCommand","createPurgeCommand","startInteractive","packageJson","type","version","name","description","option","addHelpText","cyan","bold","white","gray","addCommand","args","process","argv","slice","includes","parse"],"sources":["../src/index.ts"],"mappings":";OAEOA,MAAW,0BACTC,MAAe,mBACjBC,MAAe,sDACbC,2BAAsBC,wBAAuBC,MAA0B,mDACvEC,MAAwB,mBAE1BC,MAAiB,qBAAkB,CAAOC,KAAM,QAGvD,MAAMC,EAAUF,EAAYE,QAG5BR,EACGS,KAAK,eACLC,YAAY,oCACZF,QAAQA,EAAS,gBAAiB,SAClCG,OAAO,oBAAqB,UAG/BX,EAAQY,YACN,YACA,KACAb,EAAMc,KAAKC,KAAK,6CAChBf,EAAMc,KAAKC,KAAK,SAASf,EAAMgB,MAAMD,KAAK,kBAAkBf,EAAMc,KAAKC,KAAK,8BAC5Ef,EAAMc,KAAKC,KAAK,SAASf,EAAMiB,KAAK,8BAA8BjB,EAAMc,KAAKC,KAAK,SAClFf,EAAMc,KAAKC,KAAK,8CAKlBd,EAAQiB,WAAWhB,GACnBD,EAAQiB,WAAWb,KACnBJ,EAAQiB,WAAWd,KACnBH,EAAQiB,WAAWf,KAGnB,MAAMgB,EAAOC,QAAQC,KAAKC,MAAM,GACLH,EAAKI,SAAS,OAASJ,EAAKI,SAAS,iBAI9DjB,IAGAL,EAAQuB","ignoreList":[]}
|
package/dist/repl.d.ts
DELETED
package/dist/repl.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"repl.d.ts","sourceRoot":"","sources":["../src/repl.ts"],"names":[],"mappings":"AAAA;;GAEG;AAyDH;;GAEG;AACH,wBAAsB,gBAAgB,kBAYrC"}
|
package/dist/repl.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\repl.js","names":["chalk","inquirer","EdgeOneClient","readConfig","async","pauseToContinue","prompt","type","name","message","showBanner","console","log","cyan","white","bold","gray","startInteractive","initConfig","clear","answers","choices","value","Separator","pageSize","action","process","exit","handleAction","mainMenu","config","yellow","import","secretId","secretKey","endpoint","mode","modeText","modeColor","green","repeat","maskString","domainIdList","length","forEach","zone","idx","display","id","showConfigInfo","newValue","validate","i","trim","mask","split","map","item","includes","filter","writeConfig","editConfig","confirm","default","fs","path","os","CONFIG_FILE","join","homedir","existsSync","unlinkSync","removeConfig","configMenu","targets","purgeType","zoneId","zoneChoices","zoneAnswers","dirAnswers","dir","urlAnswers","urls","u","client","isDebug","JSON","stringify","result","createPurgeTask","Response","Error","red","Code","Message","RequestId","JobId","error","executePurge","purgeMenu","createPrefetchTask","executePrefetch","prefetchMenu","zoneIds","short","input","zones","describePurgeTasks","tasks","Tasks","Table","table","head","colWidths","chars","mid","task","status","Status","target","Target","Type","createTime","CreateTime","replace","slice","displayTarget","push","toString","TotalCount","queryPurgeHistory","describePrefetchTasks","PrefetchTasks","queryPrefetchHistory","historyMenu","selectedZoneId","selectZone","selectedZone","find","z","zoneDisplay","describeZoneStatus","Zones","paused","Paused","statusText","statusColor","viewZoneStatus","statusAnswers","modifyZoneStatus","executeZoneStatusChange","zoneStatusMenu","existingConfig","overwrite","defaultDomainList","str","showLength"],"sources":["../src/repl.ts"],"mappings":"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","ignoreList":[]}
|
package/dist/ui/interactive.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/ui/interactive.ts"],"names":[],"mappings":"AAAA;;GAEG;AAsBH;;GAEG;AACH,wBAAsB,oBAAoB,kBAiCzC"}
|
package/dist/ui/interactive.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import e from"inquirer";import a from"chalk";import{readConfig as n}from"../commands/config.js";import{execSync as o}from"child_process";import{fileURLToPath as t}from"url";import{dirname as i,resolve as s}from"path";const c=s(i(t(import.meta.url)),"index.js");export async function startInteractiveMenu(){console.log(""),console.log(a.cyan("╔══════════════════════════════════════╗")),console.log(a.cyan("║")+" "+a.white.bold("EdgeOne CLI")+" "+a.cyan("║")),console.log(a.cyan("║")+" "+a.gray("本地化 EdgeOne 服务管理工具")+" "+a.cyan("║")),console.log(a.cyan("╚══════════════════════════════════════╝")),console.log("");const o=!!n();for(;;){const{action:n}=await e.prompt([{type:"list",name:"action",message:"请选择操作:",choices:r(o),pageSize:12}]);"exit"===n&&(console.log(a.gray("\n👋 再见!\n")),process.exit(0)),await l(n)}}function r(n){const o=[{name:"📋 配置管理",value:"config"},{name:"🔄 清除缓存",value:"purge"},{name:"🔥 内容预热",value:"prefetch"},{name:"📊 历史记录",value:"history"},new e.Separator("─────────────────"),{name:"❌ 退出",value:"exit"}];return n||o.unshift({name:a.yellow("⚠️ 初始化配置 (必选)"),value:"config-init"}),o}async function l(o){switch(o){case"config-init":await m("config init","初始化配置");break;case"config":await async function(){const{action:a}=await e.prompt([{type:"list",name:"action",message:"配置管理:",choices:[{name:"查看配置",value:"show"},{name:"编辑配置",value:"edit"},{name:"删除配置",value:"remove"},new e.Separator,{name:"← 返回",value:"back"}]}]);"back"!==a&&await m({show:"config show",edit:"config edit",remove:"config remove"}[a],"")}();break;case"purge":await async function(){if(!n())return void console.log(a.yellow("\n⚠️ 请先初始化配置\n"));const{type:o}=await e.prompt([{type:"list",name:"type",message:"选择清除类型:",choices:[{name:"清除全部缓存",value:"all"},{name:"清除指定目录缓存",value:"dir"},{name:"清除指定 URL 缓存",value:"url"},new e.Separator,{name:"← 返回",value:"back"}]}]);if("back"!==o)if("all"===o)await p("purge --all","确认清除全部缓存?");else if("dir"===o){const{dir:a}=await e.prompt([{type:"input",name:"dir",message:"请输入目录路径:",validate:e=>!!e.trim()||"目录路径不能为空"}]);await p(`purge --dir "${a}"`,`确认清除目录缓存: ${a}?`)}else if("url"===o){const{urls:a}=await e.prompt([{type:"input",name:"urls",message:"请输入 URL (多个用空格分隔):",validate:e=>!!e.trim()||"URL 不能为空"}]);await p(`purge --url ${a.split(/\s+/).map(e=>`"${e}"`).join(" ")}`,`确认清除 URL 缓存: ${a}?`)}}();break;case"prefetch":await async function(){if(!n())return void console.log(a.yellow("\n⚠️ 请先初始化配置\n"));const{urls:o}=await e.prompt([{type:"input",name:"urls",message:"请输入要预热的 URL (多个用空格分隔):",validate:e=>!!e.trim()||"URL 不能为空"}]);if("back"===o)return;const t=o.split(/\s+/).filter(e=>e.trim());await p(`prefetch ${t.map(e=>`"${e}"`).join(" ")}`,`确认预热以下 URL?\n ${t.join("\n ")}`)}();break;case"history":await async function(){const o=n();if(!o)return void console.log(a.yellow("\n⚠️ 请先初始化配置\n"));const{type:t}=await e.prompt([{type:"list",name:"type",message:"选择查询类型:",choices:[{name:"清除缓存历史",value:"purge"},{name:"预热任务历史",value:"prefetch"},new e.Separator,{name:"← 返回",value:"back"}]}]);if("back"!==t)if(o.domainIdList&&o.domainIdList.length>0){const{zones:a}=await e.prompt([{type:"checkbox",name:"zones",message:"选择 Zone ID (可多选):",choices:o.domainIdList,default:o.domainIdList,validate:e=>e.length>0||"请至少选择一个 Zone ID"}]);await m(`history ${t}`,`查询 ${"purge"===t?"清除缓存":"预热任务"} 历史`)}else await m(`history ${t}`,`查询 ${"purge"===t?"清除缓存":"预热任务"} 历史`)}()}}async function m(e,a){console.log("");try{o(`node "${c}" ${e}`,{stdio:"inherit",shell:!0})}catch(e){}console.log("")}async function p(a,n){const{confirm:o}=await e.prompt([{type:"confirm",name:"confirm",message:n,default:!0}]);o&&await m(a)}
|
|
2
|
-
//# sourceMappingURL=ui\interactive.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\ui\\interactive.js","names":["inquirer","chalk","readConfig","execSync","fileURLToPath","dirname","resolve","indexPath","url","async","startInteractiveMenu","console","log","cyan","white","bold","gray","hasConfig","action","prompt","type","name","message","choices","getMenuChoices","pageSize","process","exit","executeAction","value","Separator","unshift","yellow","runCommand","show","edit","remove","confirmAndRun","dir","validate","input","trim","urls","split","map","u","join","urlList","filter","config","domainIdList","length","zones","default","cmd","description","stdio","shell","error","confirm"],"sources":["../../src/ui/interactive.ts"],"mappings":"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","ignoreList":[]}
|
package/dist/utils/crypto.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 加密文本
|
|
3
|
-
*/
|
|
4
|
-
export declare function encrypt(text: string): string;
|
|
5
|
-
/**
|
|
6
|
-
* 解密文本
|
|
7
|
-
*/
|
|
8
|
-
export declare function decrypt(encryptedText: string): string;
|
|
9
|
-
/**
|
|
10
|
-
* 检查文本是否为加密格式
|
|
11
|
-
*/
|
|
12
|
-
export declare function isEncrypted(text: string): boolean;
|
|
13
|
-
//# sourceMappingURL=crypto.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"crypto.d.ts","sourceRoot":"","sources":["../../src/utils/crypto.ts"],"names":[],"mappings":"AAmCA;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAsB5C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAsBrD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAOjD"}
|
package/dist/utils/crypto.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\utils\\crypto.js","names":["crypto","os","ALGORITHM","IV_LENGTH","SALT_LENGTH","getMachineId","platform","arch","hostname","cpus","machineInfo","length","model","createHash","update","digest","deriveKey","password","salt","pbkdf2Sync","encrypt","text","machineId","randomBytes","key","iv","cipher","createCipheriv","encrypted","final","tag","getAuthTag","Buffer","concat","from","toString","decrypt","encryptedText","combined","subarray","decipher","createDecipheriv","setAuthTag","decrypted","error","Error","isEncrypted"],"sources":["../../src/utils/crypto.ts"],"mappings":"OAIOA,MAAY,gBACZC,MAAQ,KAEf,MAAMC,EAAY,cAEZC,EAAY,GACZC,EAAc,GAMpB,SAASC,IACP,MAAMC,EAAWL,EAAGK,WACdC,EAAON,EAAGM,OACVC,EAAWP,EAAGO,WACdC,EAAOR,EAAGQ,OAIVC,EAAc,GAAGJ,KAAYC,KAAQC,KAH1BC,EAAKE,OAAS,EAAIF,EAAK,GAAGG,MAAQ,KAInD,OAAOZ,EAAOa,WAAW,UAAUC,OAAOJ,GAAaK,OAAO,MAChE,CAKA,SAASC,EAAUC,EAAkBC,GACnC,OAAOlB,EAAOmB,WAAWF,EAAUC,EAAM,IAxBxB,GAwB4C,SAC/D,QAKM,SAAUE,QAAQC,GACtB,MAAMC,EAAYjB,IACZa,EAAOlB,EAAOuB,YAAYnB,GAC1BoB,EAAMR,EAAUM,EAAWJ,GAC3BO,EAAKzB,EAAOuB,YAAYpB,GAExBuB,EAAS1B,EAAO2B,eAAezB,EAAWsB,EAAKC,GAErD,IAAIG,EAAYF,EAAOZ,OAAOO,EAAM,OAAQ,OAC5CO,GAAaF,EAAOG,MAAM,OAE1B,MAAMC,EAAMJ,EAAOK,aAUnB,OAPiBC,OAAOC,OAAO,CAC7Bf,EACAO,EACAK,EACAE,OAAOE,KAAKN,EAAW,SAGTO,SAAS,SAC3B,QAKM,SAAUC,QAAQC,GACtB,IACE,MAAMC,EAAWN,OAAOE,KAAKG,EAAe,UAEtCnB,EAAOoB,EAASC,SAAS,EAAGnC,GAC5BqB,EAAKa,EAASC,SAASnC,EAAaA,IACpC0B,EAAMQ,EAASC,SAASnC,GAAyBA,IACjDwB,EAAYU,EAASC,SAASnC,IAG9BoB,EAAMR,EADMX,IACea,GAE3BsB,EAAWxC,EAAOyC,iBAAiBvC,EAAWsB,EAAKC,GACzDe,EAASE,WAAWZ,GAEpB,IAAIa,EAAYH,EAAS1B,OAAOc,GAGhC,OAFAe,EAAYX,OAAOC,OAAO,CAACU,EAAWH,EAASX,UAExCc,EAAUR,SAAS,OAC5B,CAAE,MAAOS,GACP,MAAM,IAAIC,MAAM,0BAClB,CACF,QAKM,SAAUC,YAAYzB,GAC1B,IAEE,OADiBW,OAAOE,KAAKb,EAAM,UACnBV,QAAUP,EAC5B,CAAE,MACA,OAAO,CACT,CACF","ignoreList":[]}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
interface SignatureOptions {
|
|
2
|
-
secretId: string;
|
|
3
|
-
secretKey: string;
|
|
4
|
-
endpoint: string;
|
|
5
|
-
action: string;
|
|
6
|
-
requestBody: string;
|
|
7
|
-
timestamp: string;
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* 计算 TC3-HMAC-SHA256 签名
|
|
11
|
-
*/
|
|
12
|
-
export declare function calculateSignature(options: SignatureOptions): string;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=signature.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"signature.d.ts","sourceRoot":"","sources":["../../src/utils/signature.ts"],"names":[],"mappings":"AAKA,UAAU,gBAAgB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAoDpE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"A:\\edgeone-cli\\dist\\utils\\signature.js","names":["crypto","calculateSignature","options","secretId","secretKey","endpoint","action","requestBody","timestamp","SignedHeaders","CanonicalRequest","HTTPRequestMethod","URL","host","toLowerCase","createHash","update","digest","Algorithm","dateStr","Date","parseInt","toISOString","slice","CredentialScope","StringToSign","secretDate","createHmac","secretService","secretSigning"],"sources":["../../src/utils/signature.ts"],"mappings":"OAGOA,MAAY,gBAcb,SAAUC,mBAAmBC,GACjC,MAAMC,SAAEA,EAAQC,UAAEA,EAASC,SAAEA,EAAQC,OAAEA,EAAMC,YAAEA,EAAWC,UAAEA,GAAcN,EAcpEO,EAAgB,gCAGhBC,EACJC,cAPA,sDAVW,IAAIC,IAAI,WAAWP,KAAYQ,qBAW3BP,EAAOQ,kBASH,KACnBL,EAAgB,KAPWT,EAAOe,WAAW,UAAUC,OAAOT,GAAaU,OAAO,OAAOH,cAWrFI,EAAY,kBAEZC,EAAU,IAAIC,KAA2B,IAAtBC,SAASb,IAAmBc,cAAcC,MAAM,EAAG,IACtEC,EAAkB,GAAGL,oBAGrBM,EACJP,EAAY,KACZV,EAAY,KACZgB,EAAkB,KALWxB,EAAOe,WAAW,UAAUC,OAAON,GAAkBO,OAAO,OAAOH,cAU5FY,EAAa1B,EAAO2B,WAAW,SAAU,MAAQvB,GAAWY,OAAOG,GAASF,SAC5EW,EAAgB5B,EAAO2B,WAAW,SAAUD,GAAYV,OAAO,OAAOC,SACtEY,EAAgB7B,EAAO2B,WAAW,SAAUC,GAAeZ,OAAO,eAAeC,SAQvF,MAFsB,GAAGC,gBAAwBf,KAAYqB,oBAAkCf,gBAH7ET,EAAO2B,WAAW,SAAUE,GAAeb,OAAOS,GAAcR,OAAO,QAM3F","ignoreList":[]}
|