UNPKG

eslint-plugin-json-schema-validator

Version:
1 lines 11.8 kB
{"definitions":{"id_pattern":{"pattern":"^[a-zA-Z0-9][a-zA-Z0-9-]+$"},"demand_pattern":{"pattern":"^((environment/cloud|environment/onprem)|(api-version|extension|contribution|contributionType)/.+)$"},"link_definition":{"type":"object","required":["uri"],"properties":{"uri":{"type":"string","format":"uri"}}},"content_definition":{"type":"object","required":["path"],"properties":{"path":{"type":"string","title":"Valid file path in the extension","format":"uri-reference"}}},"contribution_definition":{"type":"object","required":["id","type","targets"],"properties":{"id":{"title":"Referencing contributions and types => https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest?view=azure-devops#contributionIds","type":"string"},"type":{"type":"string"},"description":{"type":"string"},"targets":{"type":"array","title":"Targeting Contributions: https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest?view=azure-devops#targeting-contributions","items":{"type":"string","title":"Targeting Contributions: https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest?view=azure-devops#targeting-contributions"}},"restrictedTo":{"type":"array","title":"Contribution visibility: By default, contributions are only visible to organization members. To give non-member users visibility to a contribution, set the restrictedTo attribute on that contribution. The value is a string array that lists which types of users should have visibility to the contribution","items":{"type":"string","title":"Contribution visibility: By default, contributions are only visible to organization members. To give non-member users visibility to a contribution, set the restrictedTo attribute on that contribution. The value is a string array that lists which types of users should have visibility to the contribution","enum":["member","public","anonymous"]}},"properties":{"type":"object","title":"For more information, see the contribution model overview => https://docs.microsoft.com/en-us/azure/devops/extend/develop/contributions-overview?view=azure-devops"}}},"contributionType_definition":{"type":"object","required":["id","name"],"properties":{"id":{"title":"Referencing contributions and types => https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest?view=azure-devops#contributionIds","type":"string"},"name":{"type":"string"},"description":{"type":"string"},"properties":{"type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","enum":["string","uri","guid","boolean","integer","double","dateTime","array","object"]},"required":{"type":"boolean","default":false},"description":{"type":"string"}}}}}}},"$schema":"http://json-schema.org/draft-07/schema#","type":"object","$id":"https://json.schemastore.org/vss-extension","title":"JSON Schema for Azure DevOps Extensions","required":["manifestVersion","id","version","name","publisher","categories","targets"],"properties":{"manifestVersion":{"type":"integer","title":"A number corresponding to the version of the manifest format.","default":1,"enum":[1]},"id":{"type":"string","title":"The extension's identifier","allOf":[{"$ref":"#/definitions/id_pattern"}]},"version":{"type":"string","title":"A string specifying the version of an extension.","examples":["1.0.0","1.0.0.0"],"pattern":"^\\d+\\.\\d+\\.\\d+(\\.\\d+)?$"},"name":{"type":"string","title":"A short, human-readable name of the extension. Limited to 200 characters.","maxLength":200,"examples":["Azure DevOps Extension Tasks","Fabrikam Agile Board Extension"]},"publisher":{"type":"string","title":"The identifier of the publisher.","$comment":"This identifier must match the identifier the extension is published under.","pattern":"^[a-zA-Z0-9][a-zA-Z0-9-]+$"},"categories":{"type":"array","uniqueItems":true,"title":"Array of strings representing the categories your extension belongs to.","items":{"type":"string","enum":["Azure Repos","Azure Boards","Azure Pipelines","Azure Test Plans","Azure Artifacts"]}},"targets":{"type":"array","title":"The products and services supported by your integration or extension.","items":{"type":"object","required":["id"],"properties":{"id":{"type":"string","title":"Installation targets: https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest?view=azure-devops#installation-targets","enum":["Microsoft.VisualStudio.Services","Microsoft.TeamFoundation.Server","Microsoft.VisualStudio.Services.Integration","Microsoft.TeamFoundation.Server.Integration","Microsoft.VisualStudio.Services.Cloud","Microsoft.VisualStudio.Services.Cloud.Integration"]},"version":{"type":"string","title":"Installation target versions: https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest?view=azure-devops#installation-targets","examples":["[17.0,)","[15.0,)","[14.0,)","[12.0,)","[11.0,)","[10.0,)","[12.0,15.0)","[14.3,15.1]"],"$comment":"Some installation target identifiers, like and , support an optional version range. This further clarifies the supported releases the extension or integration is supported on.Microsoft.TeamFoundation.ServerMicrosoft.TeamFoundation.Server.Integration","pattern":"^(\\[|\\()\\d{2}\\.\\d,(\\d{2}\\.\\d)?(\\)|\\])$"}}}},"scopes":{"type":"array","title":"Authorization scopes required by your extension.","items":{"type":"string","title":"Valid Values: https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest?view=azure-devops#scopes","enum":["vso.acquisition_write","vso.agentpools","vso.agentpools_listen","vso.agentpools_manage","vso.analytics","vso.auditlog","vso.base","vso.build","vso.build_execute","vso.build_fork","vso.code","vso.code_full","vso.code_manage","vso.code_status","vso.code_write","vso.commerce.write","vso.connected_server","vso.dashboards","vso.dashboards_manage","vso.entitlements","vso.extension","vso.extension.data","vso.extension.data_write","vso.extension.default","vso.extension_manage","vso.features","vso.features_write","vso.gallery","vso.gallery_acquire","vso.gallery_manage","vso.gallery_publish","vso.governance_manage","vso.graph","vso.graph_manage","vso.graph_write","vso.hooks","vso.hooks_interact","vso.hooks_write","vso.identity","vso.identity_manage","vso.licensing","vso.loadtest","vso.loadtest_write","vso.machinegroup_manage","vso.memberentitlementmanagement","vso.memberentitlementmanagement_write","vso.notification","vso.notification_diagnostics","vso.notification_manage","vso.notification_publish","vso.notification_write","vso.packaging","vso.packaging_manage","vso.packaging_write","vso.profile","vso.profile_write","vso.project","vso.project_manage","vso.project_write","vso.release","vso.release_execute","vso.release_logs","vso.release_manage","vso.security_manage","vso.serviceendpoint","vso.serviceendpoint_manage","vso.serviceendpoint_query","vso.settings","vso.settings_write","vso.symbols","vso.symbols_manage","vso.symbols_write","vso.taskgroups_manage","vso.taskgroups_read","vso.taskgroups_write","vso.test","vso.test_write","vso.tokenadministration","vso.tokens","vso.variablegroups_manage","vso.variablegroups_read","vso.variablegroups_write","vso.wiki","vso.wiki_write","vso.work","vso.work_full","vso.work_write"]}},"demands":{"type":"array","title":"Capabilities required by your extension.","items":{"type":"string","title":"Valid Values: https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest?view=azure-devops#demands","allOf":[{"$ref":"#/definitions/demand_pattern"}]}},"baseUri":{"type":"string","title":"This property should be left empty if your extension's contents are packaged with your extension.","format":"uri"},"description":{"type":"string","title":"A few sentences describing the extension.","maxLength":200},"icons":{"type":"object","required":["default"],"properties":{"default":{"type":"string","title":"(128x128 pixels) of type BMP, GIF, EXIF, JPG, PNG and TIFF.","format":"uri-reference"}}},"tags":{"type":"array","minItems":1,"items":{"type":"string","examples":["Extension","Marketplace","Publish","Package","Install","Continuous Integration","Continuous Delivery","Build","Release","Azure Pipelines","Azure DevOps Extensions","Visual Studio Extensions","__BYOLENFORCED","__DoNotDownload"]}},"galleryFlags":{"type":"array","minItems":1,"items":{"type":"string","enum":["Paid","Preview","Public"]}},"licensing":{"type":"object"},"galleryproperties":{"type":"object"},"screenshots":{"type":"array","title":"Screenshots are more valuable when featured in your content, and should be used there to help make a quality market details page for your extension. Use screenshots for less important images not featured in your content.","items":{"type":"object","title":"An image that could not be included in your **content*.","required":["path"],"properties":{"path":{"type":"string","title":"Each image should be 1366x768 pixels.","format":"uri-reference"}}}},"content":{"type":"object","title":"Dictionary of content files that describe your extension to users.","required":["details"],"properties":{"details":{"title":"Extension Details (GitHub Flavored Markdown File)","allOf":[{"$ref":"#/definitions/content_definition"}]},"license":{"title":"Extension License Information (GitHub Flavored Markdown File)","allOf":[{"$ref":"#/definitions/content_definition"}]},"pricing":{"title":"Extension Pricing Information (GitHub Flavored Markdown File)","allOf":[{"$ref":"#/definitions/content_definition"}]}}},"links":{"type":"object","title":"Dictionary of links that help users learn more about your extension, get support, and move.","minProperties":1,"properties":{"getstarted":{"title":"Get Started Documentation (GitHub Flavored Markdown File)","allOf":[{"$ref":"#/definitions/link_definition"}]},"learn":{"title":"Learning Documentation (GitHub Flavored Markdown File)","allOf":[{"$ref":"#/definitions/link_definition"}]},"license":{"title":"License Documentation (GitHub Flavored Markdown File)","allOf":[{"$ref":"#/definitions/link_definition"}]},"privacypolicy":{"title":"Privacy Policy (GitHub Flavored Markdown File)","allOf":[{"$ref":"#/definitions/link_definition"}]},"support":{"title":"Support Information (GitHub Flavored Markdown File)","allOf":[{"$ref":"#/definitions/link_definition"}]}}},"repository":{"type":"object","title":"The source code repository for the extension","required":["type","uri"],"properties":{"type":{"type":"string","title":"Type of the repository","enum":["git","mercurial","svn","cvs"]},"uri":{"type":"string","title":"Absolute URI of the repository","format":"uri"}}},"badges":{"type":"array","title":"Approved Badge Sites: https://docs.microsoft.com/en-us/azure/devops/extend/develop/manifest.#approvedbadges","items":{"type":"object","title":"Badge Information","required":["href","uri"],"properties":{"href":{"type":"string","format":"uri"},"uri":{"type":"string","format":"uri"},"description":{"type":"string","title":"Description of the badge, to be displayed on hover."}}}},"branding":{"type":"object","required":["color"],"properties":{"color":{"type":"string"},"theme":{"type":"string","enum":["light","dark"]}}},"public":{"type":"boolean","default":false},"files":{"type":"array","title":"The files section is where you reference any files you wish to include in your extension. You can add both folders and individual files.","items":{"type":"object","required":["path"],"properties":{"path":{"type":"string","format":"uri-reference"},"addressable":{"type":"boolean","default":false},"packagePath":{"type":"string","format":"uri-reference"}}}},"contributions":{"type":"array","title":"An array of contributions to the system.","items":{"allOf":[{"$ref":"#/definitions/contribution_definition"}]}},"contributionTypes":{"type":"array","title":"An array of contribution types defined by the extension","items":{"allOf":[{"$ref":"#/definitions/contributionType_definition"}]}}}}