Skip to content

Commit 0e2aad0

Browse files
authored
Merge pull request #3 from aliyun/feat/market-logo
fix logo & readme
2 parents d65acfa + 31060e4 commit 0e2aad0

File tree

6 files changed

+106
-116
lines changed

6 files changed

+106
-116
lines changed

README.en-US.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Alibaba Cloud API Toolkit
22

3+
[![Version](https://img.shields.io/visual-studio-marketplace/v/alibabacloud-openapi.vscode-alicloud-api)](https://marketplace.visualstudio.com/items?itemName=alibabacloud-openapi.vscode-alicloud-api)
4+
[![Installs](https://img.shields.io/visual-studio-marketplace/i/alibabacloud-openapi.vscode-alicloud-api)](https://marketplace.visualstudio.com/items?itemName=alibabacloud-openapi.vscode-alicloud-api)
5+
[![Ratings](https://img.shields.io/visual-studio-marketplace/r/alibabacloud-openapi.vscode-alicloud-api)](https://marketplace.visualstudio.com/items?itemName=alibabacloud-openapi.vscode-alicloud-api)
6+
37
The Alibaba Cloud API Toolkit for VSCode makes it easier to access Alibaba Cloud services.
48

59
## Features
@@ -16,7 +20,7 @@ Click to debug, you can link to Aliyun OpenAPI portal for online API trial.
1620

1721
## Extension UI Guide
1822

19-
![VSCode Extension Guide](https://img.alicdn.com/imgextra/i2/O1CN01VJNeqk1NKrbDtTotP_!!6000000001552-0-tps-2310-1524.jpg)
23+
![VSCode Extension Guide](https://img.alicdn.com/imgextra/i1/O1CN01iYMtwm27arlqDq7V3_!!6000000007814-0-tps-2328-1540.jpg)
2024

2125
* Product Searching `ctrl+cmd+k`
2226

README.md

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,19 @@
11
# Alibaba Cloud API Toolkit
22

3-
The Alibaba Cloud API Toolkit for VSCode makes it easier to access Alibaba Cloud services.
3+
[![Version](https://img.shields.io/visual-studio-marketplace/v/alibabacloud-openapi.vscode-alicloud-api)](https://marketplace.visualstudio.com/items?itemName=alibabacloud-openapi.vscode-alicloud-api)
4+
[![Installs](https://img.shields.io/visual-studio-marketplace/i/alibabacloud-openapi.vscode-alicloud-api)](https://marketplace.visualstudio.com/items?itemName=alibabacloud-openapi.vscode-alicloud-api)
5+
[![Ratings](https://img.shields.io/visual-studio-marketplace/r/alibabacloud-openapi.vscode-alicloud-api)](https://marketplace.visualstudio.com/items?itemName=alibabacloud-openapi.vscode-alicloud-api)
6+
![beta](https://img.shields.io/badge/beta-version)
47

5-
简体中文 | [English]()
8+
Alibaba Cloud API Toolkit 是一个轻量化的阿里云 API 工具,支持在 VS Code 中快速查阅阿里云产品的 API.
69

7-
## Features
10+
简体中文 | [English](./README.en-US.md)
811

9-
* **阿里云产品订阅:** 插件提供了一键订阅阿里云产品的功能,你可以通过 `ctrl+cmd+o` 搜索和订阅阿里云产品。
12+
## 功能
1013

11-
* **API 搜索:** 你可以通过 `ctrl+cmd+p` 搜索并查看已订阅的 API 文档。
14+
* **阿里云产品订阅:** 插件提供了一键订阅阿里云产品的功能,你可以通过 `ctrl+cmd+k` 搜索和订阅阿里云产品。
15+
16+
* **API 搜索:** 你可以通过 `ctrl+cmd+l` 搜索并查看已订阅的 API 文档。
1217

1318
* **API 文档预览:** 点击 API 可以打开一个新的标签页,并显示对应的 API 文档,包括描述、请求参数、响应参数和错误码。在文档中点击调试按钮,可以链接到阿里云 OpenAPI 门户进行在线 API 试用。
1419

media/src/components/APIPage/APIDocument/ApiParamsDoc.tsx

Lines changed: 37 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import { SemixJsonSchema } from "semix-core";
88
import * as PontSpec from "pontx-spec";
99
import { getRefSchema } from "../../utils";
1010
import { InnerSchemaTable } from "semix-schema-table";
11+
import { Card } from "@alicloud/console-components";
1112

1213
export class PontxParamsDocProps {
1314
parameters?: PontSpec.Parameter[];
@@ -45,38 +46,42 @@ export const ApiParamsDoc: React.FC<PontxParamsDocProps> = (props) => {
4546
return React.useMemo(() => {
4647
return (
4748
<div className="api-params-doc">
48-
<InnerSchemaTable
49-
name=""
50-
renderExpandIcon={(node, onExpand) => {
51-
return (
52-
<div
53-
className="relative flex items-center justify-center cursor-pointer rounded hover:bg-darken-3"
54-
style={{
55-
marginLeft: -23.5,
56-
width: 20,
57-
height: 20,
58-
marginRight: 3,
59-
textAlign: "center",
60-
}}
61-
onClick={() => {
62-
onExpand(node);
63-
}}
64-
>
65-
<i className={node.isExpanded ? "codicon codicon-chevron-down" : "codicon codicon-chevron-right"}></i>
66-
</div>
67-
);
68-
}}
69-
renderEmpty={() => {
70-
return (
71-
<tr>
72-
<td colSpan={2} style={{ padding: "15px 0", textAlign: "center" }}>
73-
无参数定义
74-
</td>
75-
</tr>
76-
);
77-
}}
78-
schema={schema}
79-
/>
49+
{props.parameters?.length ? (
50+
<InnerSchemaTable
51+
name=""
52+
renderExpandIcon={(node, onExpand) => {
53+
return (
54+
<div
55+
className="relative flex items-center justify-center cursor-pointer rounded hover:bg-darken-3"
56+
style={{
57+
marginLeft: -23.5,
58+
width: 20,
59+
height: 20,
60+
marginRight: 3,
61+
textAlign: "center",
62+
}}
63+
onClick={() => {
64+
onExpand(node);
65+
}}
66+
>
67+
<i className={node.isExpanded ? "codicon codicon-chevron-down" : "codicon codicon-chevron-right"}></i>
68+
</div>
69+
);
70+
}}
71+
renderEmpty={() => {
72+
return (
73+
<tr>
74+
<td colSpan={2} style={{ padding: "15px 0", textAlign: "center" }}>
75+
无参数定义
76+
</td>
77+
</tr>
78+
);
79+
}}
80+
schema={schema}
81+
/>
82+
) : (
83+
<div style={{padding:20,fontSize:14}}>调用该 OpenAPI 无需参数。</div>
84+
)}
8085
</div>
8186
);
8287
}, [schema, propSchemaCnt, props.schemas]);

package.json

Lines changed: 7 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
{
22
"name": "vscode-alicloud-api",
33
"displayName": "Alibaba Cloud API Toolkit",
4-
"description": "",
4+
"description": "The Alibaba Cloud API Toolkit for VSCode makes it easier to access Alibaba Cloud services.",
5+
"author": "Alibaba Cloud SDK Team",
56
"version": "0.0.1",
67
"private": true,
7-
"publisher": "AlibabaCloud",
8-
"license": "MIT",
8+
"publisher": "alibabacloud-openapi",
9+
"license": "Apache-2.0",
910
"engines": {
1011
"vscode": "^1.47.0"
1112
},
@@ -34,16 +35,6 @@
3435
"title": "生成本地代码",
3536
"icon": "$(debug-start)"
3637
},
37-
{
38-
"command": "alicloud.api.generateMocks",
39-
"title": "生成Mocks代码",
40-
"icon": "$(issues)"
41-
},
42-
{
43-
"command": "alicloud.api.regenerateAPIMocks",
44-
"title": "重新生成 API Mocks代码",
45-
"icon": "$(issues)"
46-
},
4738
{
4839
"command": "alicloud.api.restart",
4940
"title": "重启 Alibaba Cloud API Toolkit",
@@ -72,11 +63,6 @@
7263
"command": "alicloud.api.removeSubscriptions",
7364
"icon": "$(notebook-delete-cell)",
7465
"title": "取消订阅"
75-
},
76-
{
77-
"command": "alicloud.api.viewMocks",
78-
"icon": "$(go-to-file)",
79-
"title": "查看Mocks数据"
8066
}
8167
],
8268
"keybindings": [
@@ -151,19 +137,9 @@
151137
{
152138
"command": "alicloud.api.openDocument",
153139
"group": "navigation"
154-
},
155-
{
156-
"command": "alicloud.api.viewMocks",
157-
"group": "navigation"
158-
}
159-
],
160-
"editor/title": [
161-
{
162-
"command": "alicloud.api.regenerateAPIMocks",
163-
"when": "resourcePath =~ /mocks/ && resourceFilename =~ /.ts$/ && resourceFilename != 'index.ts'",
164-
"group": "navigation"
165140
}
166141
],
142+
"editor/title": [],
167143
"view/title": [
168144
{
169145
"command": "alicloud.api.restart",
@@ -209,7 +185,7 @@
209185
"build:media": "cd media && npm run build:ncc",
210186
"reinstall": "rimraf node_modules && npm i",
211187
"afterinstall": "cd ../../ && lerna bootstrap",
212-
"build:ncc": "rimraf dist && ncc build ./src/extension.ts -o dist -m --license licenses.txt && mv dist/index.js dist/extension.js && mv dist/license.txt ./LICENSE.txt",
188+
"build:ncc": "rimraf dist && ncc build ./src/extension.ts -o dist -m --license licenses.txt && mv dist/index.js dist/extension.js",
213189
"vscode:prepublish": "npm run build:ncc",
214190
"esbuild-base": "esbuild ./src/extension.ts --bundle --outfile=dist/extension.js --external:vscode --format=cjs --platform=node --minify",
215191
"esbuild": "npm run esbuild-base -- --sourcemap",
@@ -245,7 +221,7 @@
245221
"urllib": "^2.36.1",
246222
"xml2js": "^0.4.23"
247223
},
248-
"icon": "resources/alibabacloud.png",
224+
"icon": "resources/aliyun_logo_128x128.png",
249225
"repository": {
250226
"url": "git@github.com:aliyun/alibabacloud-api-vscode-toolkit.git",
251227
"type": "git"

resources/aliyun_logo_128x128.png

3.48 KB
Loading

src/commands.ts

Lines changed: 47 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -136,39 +136,39 @@ export class AlicloudApiCommands {
136136
});
137137
});
138138

139-
vscode.commands.registerCommand("alicloud.api.regenerateAPIMocks", async (event) => {
140-
const filePaths: string[] = (event.path || "")?.split("/");
141-
const lastMocksIndex = filePaths.lastIndexOf("mocks");
142-
const names = filePaths.slice(lastMocksIndex + 1);
143-
names.push(names.pop().replace(".ts", ""));
144-
145-
if (service.pontManager.localPontSpecs?.[0]?.name) {
146-
showProgress("重新生成 API Mocks", service.pontManager, async (log) => {
147-
log("代码生成中...");
148-
await wait(100);
149-
150-
let specName, modName, apiName;
151-
if (names.length === 3) {
152-
[specName, modName, apiName] = names;
153-
} else {
154-
[specName, apiName] = names;
155-
}
156-
const mocksPlugin = await service.pontManager.innerManagerConfig.plugins.mocks?.instance;
157-
const mocksOptions = await service.pontManager.innerManagerConfig.plugins.mocks?.options;
158-
const mocksCode = await mocksPlugin.getAPIMockCode(
159-
service.pontManager,
160-
mocksOptions,
161-
apiName,
162-
modName,
163-
specName,
164-
);
165-
fs.writeFileSync(event.path, mocksCode, "utf-8");
166-
167-
log("API Mocks 生成成功!");
168-
vscode.window.showInformationMessage("API Mocks生成成功!");
169-
});
170-
}
171-
});
139+
// vscode.commands.registerCommand("alicloud.api.regenerateAPIMocks", async (event) => {
140+
// const filePaths: string[] = (event.path || "")?.split("/");
141+
// const lastMocksIndex = filePaths.lastIndexOf("mocks");
142+
// const names = filePaths.slice(lastMocksIndex + 1);
143+
// names.push(names.pop().replace(".ts", ""));
144+
145+
// if (service.pontManager.localPontSpecs?.[0]?.name) {
146+
// showProgress("重新生成 API Mocks", service.pontManager, async (log) => {
147+
// log("代码生成中...");
148+
// await wait(100);
149+
150+
// let specName, modName, apiName;
151+
// if (names.length === 3) {
152+
// [specName, modName, apiName] = names;
153+
// } else {
154+
// [specName, apiName] = names;
155+
// }
156+
// const mocksPlugin = await service.pontManager.innerManagerConfig.plugins.mocks?.instance;
157+
// const mocksOptions = await service.pontManager.innerManagerConfig.plugins.mocks?.options;
158+
// const mocksCode = await mocksPlugin.getAPIMockCode(
159+
// service.pontManager,
160+
// mocksOptions,
161+
// apiName,
162+
// modName,
163+
// specName,
164+
// );
165+
// fs.writeFileSync(event.path, mocksCode, "utf-8");
166+
167+
// log("API Mocks 生成成功!");
168+
// vscode.window.showInformationMessage("API Mocks生成成功!");
169+
// });
170+
// }
171+
// });
172172

173173
vscode.commands.registerCommand("alicloud.api.fetchRemote", (config) => {
174174
const pontManager = service.pontManager;
@@ -245,20 +245,20 @@ export class AlicloudApiCommands {
245245
spec: spec?.apis?.[`${result.apiKey}`],
246246
});
247247
});
248-
vscode.commands.registerTextEditorCommand("alicloud.api.viewMocks", async (editor, edit) => {
249-
const isSingleSpec = PontManager.checkIsSingleSpec(service.pontManager);
250-
const result = (await findInterface(editor, !isSingleSpec, service.pontManager)) || ({} as any);
251-
const spec = PontManager.getSpec(service.pontManager, result.specName);
252-
253-
if (!result.apiName) {
254-
vscode.window.showErrorMessage("未找到该 OpenAPI");
255-
return;
256-
}
257-
258-
const namespace = [result.specName, result.modName, result.apiName].filter((id) => id).join("/");
259-
const mocksFilePath = path.join(service.pontManager.innerManagerConfig.outDir, "mocks", namespace + ".ts");
260-
vscode.commands.executeCommand("vscode.open", vscode.Uri.file(mocksFilePath));
261-
});
248+
// vscode.commands.registerTextEditorCommand("alicloud.api.viewMocks", async (editor, edit) => {
249+
// const isSingleSpec = PontManager.checkIsSingleSpec(service.pontManager);
250+
// const result = (await findInterface(editor, !isSingleSpec, service.pontManager)) || ({} as any);
251+
// const spec = PontManager.getSpec(service.pontManager, result.specName);
252+
253+
// if (!result.apiName) {
254+
// vscode.window.showErrorMessage("未找到该 OpenAPI");
255+
// return;
256+
// }
257+
258+
// const namespace = [result.specName, result.modName, result.apiName].filter((id) => id).join("/");
259+
// const mocksFilePath = path.join(service.pontManager.innerManagerConfig.outDir, "mocks", namespace + ".ts");
260+
// vscode.commands.executeCommand("vscode.open", vscode.Uri.file(mocksFilePath));
261+
// });
262262

263263
// vscode.commands.registerCommand('alicloud.api.refreshPontExplorer', () => {
264264
// service.treeDataProvider.refresh();

0 commit comments

Comments
 (0)