edgeone-cli 1.0.0 → 1.0.2

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.
@@ -1,54 +1,54 @@
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 CreatePurgeTaskResponse {
16
- Response: {
17
- RequestId: string;
18
- JobId?: string;
19
- Error?: {
20
- Code: string;
21
- Message: string;
22
- };
23
- };
24
- }
25
- export declare class EdgeOneClient {
26
- private secretId;
27
- private secretKey;
28
- private endpoint;
29
- private region;
30
- private mode;
31
- constructor(secretId: string, secretKey: string, endpoint: string, region?: string, mode?: ConfigMode);
32
- /**
33
- * 发送请求
34
- */
35
- private request;
36
- /**
37
- * 创建清除缓存任务
38
- */
39
- createPurgeTask(options: CreatePurgeTaskOptions): Promise<CreatePurgeTaskResponse>;
40
- /**
41
- * 查询清除缓存任务
42
- */
43
- describePurgeTasks(zoneIds?: string[]): Promise<any>;
44
- /**
45
- * 创建预热任务
46
- */
47
- createPrefetchTask(options: CreatePrefetchTaskOptions): Promise<CreatePurgeTaskResponse>;
48
- /**
49
- * 查询预热任务
50
- */
51
- describePrefetchTasks(zoneIds?: string[]): Promise<any>;
52
- }
53
- export {};
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 CreatePurgeTaskResponse {
16
+ Response: {
17
+ RequestId: string;
18
+ JobId?: string;
19
+ Error?: {
20
+ Code: string;
21
+ Message: string;
22
+ };
23
+ };
24
+ }
25
+ export declare class EdgeOneClient {
26
+ private secretId;
27
+ private secretKey;
28
+ private endpoint;
29
+ private region;
30
+ private mode;
31
+ constructor(secretId: string, secretKey: string, endpoint: string, region?: string, mode?: ConfigMode);
32
+ /**
33
+ * 发送请求
34
+ */
35
+ private request;
36
+ /**
37
+ * 创建清除缓存任务
38
+ */
39
+ createPurgeTask(options: CreatePurgeTaskOptions): Promise<CreatePurgeTaskResponse>;
40
+ /**
41
+ * 查询清除缓存任务
42
+ */
43
+ describePurgeTasks(zoneIds?: string[]): Promise<any>;
44
+ /**
45
+ * 创建预热任务
46
+ */
47
+ createPrefetchTask(options: CreatePrefetchTaskOptions): Promise<CreatePurgeTaskResponse>;
48
+ /**
49
+ * 查询预热任务
50
+ */
51
+ describePrefetchTasks(zoneIds?: string[]): Promise<any>;
52
+ }
53
+ export {};
54
54
  //# sourceMappingURL=client.d.ts.map
@@ -1,196 +1,2 @@
1
- import { calculateSignature } from "../utils/signature.js";
2
- export class EdgeOneClient {
3
- secretId;
4
- secretKey;
5
- endpoint;
6
- region;
7
- mode;
8
- constructor(secretId, secretKey, endpoint, region = "ap-guangzhou", mode = "production") {
9
- this.secretId = secretId;
10
- this.secretKey = secretKey;
11
- this.endpoint = endpoint;
12
- this.region = region;
13
- this.mode = mode;
14
- }
15
- /**
16
- * 发送请求
17
- */
18
- async request(action, version, params) {
19
- const timestamp = Math.floor(Date.now() / 1000).toString();
20
- // 请求体直接使用传入的参数
21
- const requestBody = JSON.stringify(params);
22
- // 计算签名
23
- const authorization = calculateSignature({
24
- secretId: this.secretId,
25
- secretKey: this.secretKey,
26
- endpoint: this.endpoint,
27
- action,
28
- requestBody,
29
- timestamp,
30
- });
31
- const requestHeaders = {
32
- Authorization: authorization,
33
- "Content-Type": "application/json; charset=utf-8",
34
- "X-TC-Action": action,
35
- "X-TC-Version": version,
36
- "X-TC-Timestamp": timestamp,
37
- "X-TC-Language": "zh-CN",
38
- };
39
- // 仅在调试模式下显示请求信息
40
- if (this.mode === "debug") {
41
- console.log("\n请求信息:");
42
- console.log(` URL: https://${this.endpoint}`);
43
- console.log(` Headers: ${JSON.stringify({ ...requestHeaders, Authorization: "***" }, null, 2)}`);
44
- console.log(` Body: ${requestBody}\n`);
45
- }
46
- // 发送请求
47
- try {
48
- const response = await fetch(`https://${this.endpoint}`, {
49
- method: "POST",
50
- headers: requestHeaders,
51
- body: requestBody,
52
- });
53
- const result = await response.json();
54
- // 仅在调试模式下显示响应结果
55
- if (this.mode === "debug") {
56
- console.log("响应结果:");
57
- console.log(JSON.stringify(result, null, 2));
58
- }
59
- return result;
60
- }
61
- catch (error) {
62
- throw error;
63
- }
64
- }
65
- /**
66
- * 创建清除缓存任务
67
- */
68
- async createPurgeTask(options) {
69
- const params = {
70
- ZoneId: options.zoneId || "*",
71
- Type: options.type,
72
- Method: "delete",
73
- Targets: options.targets || [],
74
- };
75
- return await this.request("CreatePurgeTask", "2022-09-01", params);
76
- }
77
- /**
78
- * 查询清除缓存任务
79
- */
80
- async describePurgeTasks(zoneIds) {
81
- const now = new Date();
82
- const oneMonthAgo = new Date(now.getTime() - 30 * 24 * 60 * 60 * 1000);
83
- // 格式化为 ISO 8601 格式,时区为 +08:00
84
- const toISOStringWithTimezone = (date) => {
85
- const year = date.getFullYear();
86
- const month = String(date.getMonth() + 1).padStart(2, "0");
87
- const day = String(date.getDate()).padStart(2, "0");
88
- const hours = String(date.getHours()).padStart(2, "0");
89
- const minutes = String(date.getMinutes()).padStart(2, "0");
90
- const seconds = String(date.getSeconds()).padStart(2, "0");
91
- return `${year}-${month}-${day}T${hours}:${minutes}:${seconds}+08:00`;
92
- };
93
- const baseParams = {
94
- StartTime: toISOStringWithTimezone(oneMonthAgo),
95
- EndTime: toISOStringWithTimezone(now),
96
- };
97
- // 如果没有指定 zoneIds,直接查询
98
- if (!zoneIds || zoneIds.length === 0) {
99
- return await this.request("DescribePurgeTasks", "2022-09-01", baseParams);
100
- }
101
- // 如果只有一个 zone,直接查询
102
- if (zoneIds.length === 1) {
103
- baseParams.ZoneId = zoneIds[0];
104
- return await this.request("DescribePurgeTasks", "2022-09-01", baseParams);
105
- }
106
- // 多个 zone,并发查询并合并结果
107
- const requests = zoneIds.map(zoneId => {
108
- const params = { ...baseParams, ZoneId: zoneId };
109
- return this.request("DescribePurgeTasks", "2022-09-01", params);
110
- });
111
- const results = await Promise.all(requests);
112
- // 合并结果
113
- const merged = { Response: {} };
114
- const allTasks = [];
115
- for (const result of results) {
116
- if (result.Response?.Error) {
117
- // 如果任何一个请求失败,返回第一个错误
118
- return result;
119
- }
120
- if (result.Response?.PurgeTasks) {
121
- allTasks.push(...result.Response.PurgeTasks);
122
- }
123
- }
124
- // 合并成功响应
125
- merged.Response = {
126
- ...results[0].Response,
127
- PurgeTasks: allTasks,
128
- };
129
- return merged;
130
- }
131
- /**
132
- * 创建预热任务
133
- */
134
- async createPrefetchTask(options) {
135
- const params = {
136
- ZoneId: options.zoneId || "*",
137
- Targets: options.urls,
138
- };
139
- return await this.request("CreatePrefetchTask", "2022-09-01", params);
140
- }
141
- /**
142
- * 查询预热任务
143
- */
144
- async describePrefetchTasks(zoneIds) {
145
- const now = new Date();
146
- const oneMonthAgo = new Date(now.getTime() - 30 * 24 * 60 * 60 * 1000);
147
- // 格式化为 ISO 8601 格式,时区为 +08:00
148
- const toISOStringWithTimezone = (date) => {
149
- const year = date.getFullYear();
150
- const month = String(date.getMonth() + 1).padStart(2, "0");
151
- const day = String(date.getDate()).padStart(2, "0");
152
- const hours = String(date.getHours()).padStart(2, "0");
153
- const minutes = String(date.getMinutes()).padStart(2, "0");
154
- const seconds = String(date.getSeconds()).padStart(2, "0");
155
- return `${year}-${month}-${day}T${hours}:${minutes}:${seconds}+08:00`;
156
- };
157
- const baseParams = {
158
- StartTime: toISOStringWithTimezone(oneMonthAgo),
159
- EndTime: toISOStringWithTimezone(now),
160
- };
161
- // 如果没有指定 zoneIds,直接查询
162
- if (!zoneIds || zoneIds.length === 0) {
163
- return await this.request("DescribePrefetchTasks", "2022-09-01", baseParams);
164
- }
165
- // 如果只有一个 zone,直接查询
166
- if (zoneIds.length === 1) {
167
- baseParams.ZoneId = zoneIds[0];
168
- return await this.request("DescribePrefetchTasks", "2022-09-01", baseParams);
169
- }
170
- // 多个 zone,并发查询并合并结果
171
- const requests = zoneIds.map(zoneId => {
172
- const params = { ...baseParams, ZoneId: zoneId };
173
- return this.request("DescribePrefetchTasks", "2022-09-01", params);
174
- });
175
- const results = await Promise.all(requests);
176
- // 合并结果
177
- const merged = { Response: {} };
178
- const allTasks = [];
179
- for (const result of results) {
180
- if (result.Response?.Error) {
181
- // 如果任何一个请求失败,返回第一个错误
182
- return result;
183
- }
184
- if (result.Response?.PrefetchTasks) {
185
- allTasks.push(...result.Response.PrefetchTasks);
186
- }
187
- }
188
- // 合并成功响应
189
- merged.Response = {
190
- ...results[0].Response,
191
- PrefetchTasks: allTasks,
192
- };
193
- return merged;
194
- }
195
- }
196
- //# sourceMappingURL=client.js.map
1
+ import{calculateSignature as e}from"../utils/signature.js";export class EdgeOneClient{secretId;secretKey;endpoint;region;mode;constructor(e,t,s,r="ap-guangzhou",n="production"){this.secretId=e,this.secretKey=t,this.endpoint=s,this.region=r,this.mode=n}async request(t,s,r){const n=Math.floor(Date.now()/1e3).toString(),o=JSON.stringify(r),a={Authorization:e({secretId:this.secretId,secretKey:this.secretKey,endpoint:this.endpoint,action:t,requestBody:o,timestamp:n}),"Content-Type":"application/json; charset=utf-8","X-TC-Action":t,"X-TC-Version":s,"X-TC-Timestamp":n,"X-TC-Language":"zh-CN"};"debug"===this.mode&&(console.log("\n请求信息:"),console.log(` URL: https://${this.endpoint}`),console.log(` Headers: ${JSON.stringify({...a,Authorization:"***"},null,2)}`),console.log(` Body: ${o}\n`));try{const e=await fetch(`https://${this.endpoint}`,{method:"POST",headers:a,body:o}),t=await e.json();return"debug"===this.mode&&(console.log("响应结果:"),console.log(JSON.stringify(t,null,2))),t}catch(e){throw e}}async createPurgeTask(e){const t={ZoneId:e.zoneId||"*",Type:e.type,Method:"delete",Targets:e.targets||[]};return await this.request("CreatePurgeTask","2022-09-01",t)}async describePurgeTasks(e){const t=new Date,s=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}T${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}:${String(e.getSeconds()).padStart(2,"0")}+08:00`,r={StartTime:s(new Date(t.getTime()-2592e6)),EndTime:s(t)};if(!e||0===e.length)return await this.request("DescribePurgeTasks","2022-09-01",r);if(1===e.length)return r.ZoneId=e[0],await this.request("DescribePurgeTasks","2022-09-01",r);const n=e.map(e=>{const t={...r,ZoneId:e};return this.request("DescribePurgeTasks","2022-09-01",t)}),o=await Promise.all(n),a={Response:{}},i=[];for(const e of o){if(e.Response?.Error)return e;e.Response?.PurgeTasks&&i.push(...e.Response.PurgeTasks)}return a.Response={...o[0].Response,PurgeTasks:i},a}async createPrefetchTask(e){const t={ZoneId:e.zoneId||"*",Targets:e.urls};return await this.request("CreatePrefetchTask","2022-09-01",t)}async describePrefetchTasks(e){const t=new Date,s=e=>`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}T${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}:${String(e.getSeconds()).padStart(2,"0")}+08:00`,r={StartTime:s(new Date(t.getTime()-2592e6)),EndTime:s(t)};if(!e||0===e.length)return await this.request("DescribePrefetchTasks","2022-09-01",r);if(1===e.length)return r.ZoneId=e[0],await this.request("DescribePrefetchTasks","2022-09-01",r);const n=e.map(e=>{const t={...r,ZoneId:e};return this.request("DescribePrefetchTasks","2022-09-01",t)}),o=await Promise.all(n),a={Response:{}},i=[];for(const e of o){if(e.Response?.Error)return e;e.Response?.PrefetchTasks&&i.push(...e.Response.PrefetchTasks)}return a.Response={...o[0].Response,PrefetchTasks:i},a}}
2
+ //# sourceMappingURL=api\client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
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"],"sources":["../../src/api/client.ts"],"mappings":"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","ignoreList":[]}
@@ -1,47 +1,47 @@
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 {};
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
47
  //# sourceMappingURL=signer.d.ts.map
@@ -1,100 +1,2 @@
1
- /**
2
- * 腾讯云 API 签名工具 (TC3-HMAC-SHA256)
3
- */
4
- import crypto from 'crypto';
5
- export class Signer {
6
- /**
7
- * 计算 HMAC-SHA256
8
- */
9
- static hmacSha256(key, message) {
10
- return crypto.createHmac('sha256', key).update(message).digest();
11
- }
12
- /**
13
- * 计算 SHA256
14
- */
15
- static sha256(message) {
16
- return crypto.createHash('sha256').update(message).digest();
17
- }
18
- /**
19
- * 计算 SHA256 hex
20
- */
21
- static sha256Hex(message) {
22
- return crypto.createHash('sha256').update(message).digest('hex');
23
- }
24
- /**
25
- * 获取日期
26
- */
27
- static getDate(timestamp) {
28
- const date = new Date(timestamp * 1000);
29
- return date.toISOString().substr(0, 10);
30
- }
31
- /**
32
- * 构建 Query String
33
- */
34
- static buildQueryString(params) {
35
- const sortedKeys = Object.keys(params).sort();
36
- return sortedKeys
37
- .map((key) => {
38
- const value = params[key];
39
- if (Array.isArray(value)) {
40
- return value
41
- .map((v) => `${this._encodeURIComponent(key)}=${this._encodeURIComponent(String(v))}`)
42
- .join('&');
43
- }
44
- return `${this._encodeURIComponent(key)}=${this._encodeURIComponent(String(value))}`;
45
- })
46
- .join('&');
47
- }
48
- /**
49
- * URI 编码(RFC3986)
50
- */
51
- static _encodeURIComponent(str) {
52
- return encodeURIComponent(str).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);
53
- }
54
- /**
55
- * 签名
56
- */
57
- static sign(options) {
58
- const { method, host, path, queryParams = {}, bodyParams = {}, secretId, secretKey, service, region = 'ap-guangzhou', } = options;
59
- // 1. 拼接规范查询字符串
60
- const queryString = this.buildQueryString(queryParams);
61
- // 2. 拼接请求体
62
- const body = bodyParams ? JSON.stringify(bodyParams) : '';
63
- const contentType = 'application/json';
64
- // 3. 计算时间戳
65
- const timestamp = Math.floor(Date.now() / 1000);
66
- const date = this.getDate(timestamp);
67
- // 4. 拼接 CanonicalRequest
68
- const httpRequestMethod = method;
69
- const canonicalUri = path;
70
- const canonicalQueryString = queryString;
71
- const canonicalHeaders = `content-type:${contentType}\nhost:${host}\n`;
72
- const signedHeaders = 'content-type;host';
73
- const hashedRequestPayload = this.sha256Hex(body);
74
- const canonicalRequest = `${httpRequestMethod}\n${canonicalUri}\n${canonicalQueryString}\n${canonicalHeaders}\n${signedHeaders}\n${hashedRequestPayload}`;
75
- // 5. 拼接 StringToSign
76
- const algorithm = 'TC3-HMAC-SHA256';
77
- const credentialScope = `${date}/${service}/request`;
78
- const hashedCanonicalRequest = this.sha256Hex(canonicalRequest);
79
- const stringToSign = `${algorithm}\n${timestamp}\n${credentialScope}\n${hashedCanonicalRequest}`;
80
- // 6. 计算签名
81
- const secretDate = this.hmacSha256(Buffer.from(`TC3${secretKey}`, 'utf-8'), date);
82
- const secretService = this.hmacSha256(secretDate, service);
83
- const secretSigning = this.hmacSha256(secretService, 'request');
84
- const signature = this.hmacSha256(secretSigning, stringToSign).toString('hex');
85
- // 7. 拼接 Authorization
86
- const authorization = `${algorithm} Credential=${secretId}/${credentialScope}, SignedHeaders=${signedHeaders}, Signature=${signature}`;
87
- // 8. 构造请求头
88
- const headers = {
89
- Authorization: authorization,
90
- 'Content-Type': contentType,
91
- Host: host,
92
- 'X-TC-Action': bodyParams.Action || '',
93
- 'X-TC-Timestamp': timestamp.toString(),
94
- 'X-TC-Version': bodyParams.Version || '',
95
- 'X-TC-Region': region,
96
- };
97
- return { headers, body };
98
- }
99
- }
100
- //# sourceMappingURL=signer.js.map
1
+ import t from"crypto";export class Signer{static hmacSha256(e,n){return t.createHmac("sha256",e).update(n).digest()}static sha256(e){return t.createHash("sha256").update(e).digest()}static sha256Hex(e){return t.createHash("sha256").update(e).digest("hex")}static getDate(t){return new Date(1e3*t).toISOString().substr(0,10)}static buildQueryString(t){return Object.keys(t).sort().map(e=>{const n=t[e];return Array.isArray(n)?n.map(t=>`${this._encodeURIComponent(e)}=${this._encodeURIComponent(String(t))}`).join("&"):`${this._encodeURIComponent(e)}=${this._encodeURIComponent(String(n))}`}).join("&")}static _encodeURIComponent(t){return encodeURIComponent(t).replace(/[!*'()]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`)}static sign(t){const{method:e,host:n,path:r,queryParams:a={},bodyParams:s={},secretId:o,secretKey:i,service:h,region:c="ap-guangzhou"}=t,p=this.buildQueryString(a),u=s?JSON.stringify(s):"",$="application/json",d=Math.floor(Date.now()/1e3),g=this.getDate(d),m="content-type;host",S=`${e}\n${r}\n${p}\n${`content-type:${$}\nhost:${n}\n`}\n${m}\n${this.sha256Hex(u)}`,C="TC3-HMAC-SHA256",y=`${g}/${h}/request`,H=`${C}\n${d}\n${y}\n${this.sha256Hex(S)}`,A=this.hmacSha256(Buffer.from(`TC3${i}`,"utf-8"),g),I=this.hmacSha256(A,h),T=this.hmacSha256(I,"request");return{headers:{Authorization:`${C} Credential=${o}/${y}, SignedHeaders=${m}, Signature=${this.hmacSha256(T,H).toString("hex")}`,"Content-Type":$,Host:n,"X-TC-Action":s.Action||"","X-TC-Timestamp":d.toString(),"X-TC-Version":s.Version||"","X-TC-Region":c},body:u}}}
2
+ //# sourceMappingURL=api\signer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/api/signer.ts"],"names":[],"mappings":"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"}
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,19 +1,19 @@
1
- import { Command } from 'commander';
2
- type ConfigMode = 'debug' | 'production';
3
- interface Config {
4
- secretId: string;
5
- secretKey: string;
6
- endpoint: string;
7
- mode: ConfigMode;
8
- domainIdList: string[];
9
- }
10
- declare const CONFIG_FILE: string;
11
- /**
12
- * 读取配置(自动解密,自动迁移旧格式)
13
- */
14
- declare function readConfig(): Config | null;
15
- declare const configCmd: Command;
16
- export default configCmd;
17
- export { readConfig, CONFIG_FILE };
18
- export type { ConfigMode };
1
+ import { Command } from 'commander';
2
+ type ConfigMode = 'debug' | 'production';
3
+ interface Config {
4
+ secretId: string;
5
+ secretKey: string;
6
+ endpoint: string;
7
+ mode: ConfigMode;
8
+ domainIdList: string[];
9
+ }
10
+ declare const CONFIG_FILE: string;
11
+ /**
12
+ * 读取配置(自动解密,自动迁移旧格式)
13
+ */
14
+ declare function readConfig(): Config | null;
15
+ declare const configCmd: Command;
16
+ export default configCmd;
17
+ export { readConfig, CONFIG_FILE };
18
+ export type { ConfigMode };
19
19
  //# sourceMappingURL=config.d.ts.map