SuperAPI AI 工具集

core-extension-api

编程与开发

查看项目

更新于 10-15 21:43

技能介绍

用途:这是 Salesforce DX VS Code 核心扩展(salesforce.salesforcedx-vscode-core)的公共 API 说明,属于扩展开发者接口文档,而非终端用户工具。核心包的 activate() 返回 SalesforceVSCodeCoreApi 对象,供外部扩展读取。

使用方式:消费者通过 vscode.extensions.getExtension<SalesforceVSCodeCoreApi>('salesforce.salesforcedx-vscode-core') 取得扩展后访问 ext.exports;也可经 @salesforce/vscode-service-provider 间接消费。典型消费者模式包括在 extensionDependencies 中声明该扩展、用 semver.satisfies 做版本门槛检查、自行定义最小类型而不直接导入 SalesforceVSCodeCoreApi、对 services 类调用 .getInstance(extensionName),以及在核心缺失或过旧时优雅降级。

API 表面:顶层包含 getUserId、getAuthFields、isCLIInstalled、SfCommandletExecutor、WorkspaceContext、telemetryService、workspaceContextUtils;顶层的 channelService 字段已被移除,消费者须改用 services.ChannelService。services 子对象为带静态方法的类构造器,包括 RegistryAccess、ChannelService、TelemetryService、WorkspaceContext、CommandEventDispatcher,其中 .getInstance() 签名属于公共契约。部分能力在顶层与 services 两层重叠,评估使用情况时需同时检查。

破坏性变更:从 SalesforceVSCodeCoreApi 移除字段、改字段类型、改行为(即使签名不变)、改 services.* 类的静态方法(如 .getInstance())、重命名或重构 services 子对象;新增字段为非破坏性。

变更前需先读 external-consumers,在 monorepo 中 grep .exports.MEMBER,并用 gh api 搜索 forcedotcom 与 salesforcecli 组织中的符号用法;判断是否拆除前需确认外部也无人使用,改行为前需检查消费者版本门槛与最低版本。缺失信息:官方文档未提供具体版本号、许可或安装步骤。