扩展配置文件
为了定义扩展的属性以及扩展可以调用的各种功能,每个扩展的根目录下都应该拥有一个名为 extension.json
的扩展配置文件,它具有以下默认内容:
{
"name": "pro-api-sdk",
"uuid": "",
"displayName": "PRO API SDK",
"description": "嘉立创EDA & EasyEDA 专业版扩展 API 开发工具",
"version": "1.0.0",
"publisher": "JLCEDA <support@lceda.cn>",
"engines": {
"eda": "^2.2.32"
},
"license": "MIT License",
"repository": {
"type": "extension-store",
"url": ""
},
"categories": "Other",
"keywords": ["SDK"],
"images": {
"logo": "./images/logo.png"
},
"homepage": "https://pro.lceda.cn",
"bugs": "https://lceda.cn/page/feedback?originPage=other",
"activationEvents": {},
"entry": "./dist/index",
"dependentExtensions": {},
"headerMenus": {
"home": [
{
"id": "API SDK",
"title": "API SDK",
"menuItems": [
{
"id": "About",
"title": "关于...",
"registerFn": "about"
}
]
}
],
"sch": [
{
"id": "API SDK",
"title": "API SDK",
"menuItems": [
{
"id": "About",
"title": "关于...",
"registerFn": "about"
}
]
}
],
"pcb": [
{
"id": "API SDK",
"title": "API SDK",
"menuItems": [
{
"id": "About",
"title": "关于...",
"registerFn": "about"
}
]
}
]
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
name string
扩展名称。仅可包含小写英文字符 a-z
、数字 0-9
与中划线 -
,长度为 5-30
个字符。
uuid string
UUID。扩展的唯一 ID,仅可包含小写英文字符 a-z
、数字 0-9
,长度为 32
个字符。
displayName string
展示名称。
description string
描述。
version string
语义化版本号。格式为 major.minor.patch
。
publisher string
开发者信息。
engines Object feature in working
扩展适配引擎。
engines.eda string feature in working
扩展适配嘉立创 EDA 专业版(线上)版本。
license string
开源协议。建议前往 Choose a License 为项目选择适配的开源协议。
repository Object feature in working
扩展源代码仓库信息。
repository.type string feature in working
源代码仓库类型。可选值为 extension-store
git
mercurial
svn
ftp
github
gitlab
gitlab-selfhosted
gitee
gitea
bitbucket
coding
gnu-savannah
gitbucket
gogs
。
repository.url string feature in working
源代码仓库 URL。
categories string | Array<string> feature
扩展分类。可选值为 System
Schematic
Symbol
PCB
Footprint
3DModel
CBB
Panel
PanelLibrary
DocumentTree
IntegratedLibrary
Other
。
keywords Array<string> feature
关键词。
images Object feature
展示图。
images.logo string
图标。尺寸 1:1
,PNG/JPEG 格式。
images.banner string feature
横幅。尺寸 64:27
,用于扩展商店页面的展示,JPEG 格式。
homepage string
主页。
bugs string
漏洞反馈渠道。请填写一个正确的 URI。
activationEvents Object feature in working
扩展激活方式。
entry string
入口文件。不建议修改,在 SDK 内已正确定义。
dependentExtensions Object feature in working
依赖的其他扩展。支持使用扩展商店内扩展的 32 位 UUID(支持自动拉取),或用户自定义的扩展名称(需要手动上传)。
headerMenus Object
扩展初始化时注册的头部菜单。
当前支持按照以下页面分别配置头部菜单:
{
"headerMenus": {
"home": [],
"blank": [],
"sch": [],
"symbol": [],
"pcb": [],
"footprint": [],
"pcbView": [],
"panel": [],
"panelView": []
}
}
2
3
4
5
6
7
8
9
10
11
12
13
headerMenus.*.id string
菜单项 ID。必须唯一。
headerMenus.*.title string
菜单项标题。
headerMenus.*.menuItems Object
菜单项子项。最多可以嵌套两层子项。
menuItems
与 registerFn
冲突,同级项内只允许存在其一。
headerMenus.*.registerFn string
菜单关联注册方法。此处的方法关联到在本扩展代码内导出的方法,你需要使用 export
将指定方法作为 ES Module
导出,并将其方法名填写于此处。
menuItems
与 registerFn
冲突,同级项内只允许存在其一。