vscode 扩展 package.json 有官方架构吗?

问题描述 投票:0回答:1

是否有用于 VS-Code 扩展的官方 package.json 架构?我查看了扩展 API 文档,它们向您指出了 NPM 包方案,但它并不具有文档中描述的所有相同字段。例如,文档中定义了

extensionDependencies
,但 NPM 包方案中没有定义。

https://code.visualstudio.com/api/references/extension-manifest

https://docs.npmjs.com/cli/v7/configuring-npm/package-json

visual-studio-code vscode-extensions
1个回答
0
投票

您可以在 GitHub 上的项目源代码中找到 VSCode 扩展清单的类型/接口定义。

它是在 TypeScript 中定义的,而不是 JSON Schema,但仍然非常方便。

IRelaxedExtensionManifest 似乎是根定义:

export interface IRelaxedExtensionManifest {
    name: string;
    displayName?: string;
    publisher: string;
    version: string;
    engines: { readonly vscode: string };
    description?: string;
    main?: string;
    browser?: string;
    preview?: boolean;
    // For now this only supports pointing to l10n bundle files
    // but it will be used for package.l10n.json files in the future
    l10n?: string;
    icon?: string;
    categories?: string[];
    keywords?: string[];
    activationEvents?: string[];
    extensionDependencies?: string[];
    extensionPack?: string[];
    extensionKind?: ExtensionKind | ExtensionKind[];
    contributes?: IExtensionContributions;
    repository?: { url: string };
    bugs?: { url: string };
    enabledApiProposals?: readonly string[];
    api?: string;
    scripts?: { [key: string]: string };
    capabilities?: IExtensionCapabilities;
}

请参阅同一文件以了解其余键的类型:

https://github.com/microsoft/vscode/blob/main/src/vs/platform/extensions/common/extensions.ts

© www.soinside.com 2019 - 2024. All rights reserved.