<?xml version="1.0" encoding="utf-8"?>
<!-- Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this file to you under the MIT license. See the LICENSE.md file in the project root for more information. -->
<Rule Name="Package" Description="Свойства, связанные с созданием пакетов NuGet." DisplayName="Пакет" PageTemplate="generic" Order="400" xmlns="http://schemas.microsoft.com/build/2009/properties">
  <Rule.Categories>
    <Category Name="General" DisplayName="Общие" Description="Общие параметры пакета." />
    <Category Name="License" DisplayName="Лицензия" Description="Указывает лицензию для пакета." />
  </Rule.Categories>
  <Rule.DataSource>
    <DataSource Persistence="ProjectFileWithInterception" SourceOfDefaultValue="AfterContext" HasConfigurationCondition="False" />
  </Rule.DataSource>
  <BoolProperty Name="GeneratePackageOnBuild" DisplayName="Формировать пакет NuGet при сборке" Description="Создать файл пакета во время операций сборки." Category="General" />
  <StringProperty Name="PackageId" DisplayName="Идентификатор пакета" Description="Идентификатор пакета без учета регистра, который должен быть уникальным в nuget.org или любой коллекции, где находится пакет. Идентификаторы не могут содержать пробелы или символы, недопустимые для URL-адреса, и, как правило, следуют правилам пространства имен .NET." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147131" Category="General">
    <StringProperty.Metadata>
      <NameValuePair Name="DependsOn" Value="Application::AssemblyName" />
    </StringProperty.Metadata>
  </StringProperty>
  <StringProperty Name="Version" DisplayName="Версия пакета" Description="Версия пакета в формате &quot;основной_номер.дополнительный_номер.исправление&quot;. Номера версий могут содержать суффикс предварительного выпуска." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147132" Category="General" />
  <StringProperty Name="Authors" DisplayName="Авторы" Description="Список авторов пакетов с разделителями-запятыми, соответствующих именам профилей на сайте nuget.org. Они отображаются в коллекции NuGet на сайте nuget.org и используются для указания перекрестных ссылок на пакеты тех же авторов." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147237" Category="General">
    <StringProperty.Metadata>
      <NameValuePair Name="DependsOn" Value="Application::AssemblyName" />
    </StringProperty.Metadata>
  </StringProperty>
  <StringProperty Name="Company" DisplayName="Организация" Category="General">
    <StringProperty.Metadata>
      <NameValuePair Name="DependsOn" Value="Package::Authors" />
    </StringProperty.Metadata>
  </StringProperty>
  <StringProperty Name="Product" DisplayName="Продукт" Category="General">
    <StringProperty.Metadata>
      <NameValuePair Name="DependsOn" Value="Application::AssemblyName" />
    </StringProperty.Metadata>
  </StringProperty>
  <StringProperty Name="Description" DisplayName="Описание" Description="Описание пакета для отображения в пользовательском интерфейсе." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147238" Category="General" />
  <StringProperty Name="Copyright" DisplayName="Авторское право" Description="Сведения об авторских правах для пакета." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147133" Category="General" />
  <StringProperty Name="PackageProjectUrl" DisplayName="URL-адрес проекта" Description="URL-адрес домашней страницы пакета, часто отображающийся в пользовательском интерфейсе, а также в nuget.org." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147240" Category="General" />
  <!-- TODO (tomescht): 
       We should re-think this. This property is the relative path to the icon file _within the package_; setting it does not guarantee
       that the corresponding file in the project is correctly copied into the package. A better alternative may be to expose a property
       with the path to the file in the project instead, and update this one appropriately when that one changes.
  -->
  <StringProperty Name="PackageIcon" DisplayName="Файл значка" Description="Относительный путь от корня пакета к файлу значка. Кроме задания этого свойства, необходимо убедиться, что файл включен в пакет. Размер файла изображения ограничен 1 МБ. К поддерживаемым форматам файлов относятся JPEG и PNG. Рекомендуемое разрешение изображения: 128x128." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147134" Category="General" />
  <StringProperty Name="RepositoryUrl" DisplayName="URL-адрес репозитория" Description="Указывает URL-адрес для репозитория, в котором находится исходный код для пакета и (или) из которого выполняется его сборка. Для связывания со страницей проекта следует использовать поле &quot;URL-адрес проекта&quot;." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147241" Category="General" />
  <StringProperty Name="RepositoryType" DisplayName="Тип репозитория" Description="Указывает тип репозитория. Значение по умолчанию — &quot;git&quot;." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147241" Category="General" />
  <StringProperty Name="PackageTags" DisplayName="Теги" Description="Список разделенных точкой с запятой тегов и ключевых слов, описывающих пакет и помогающих находить пакеты с помощью функций поиска и фильтрации." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147135" Category="General" />
  <StringProperty Name="PackageReleaseNotes" DisplayName="Заметки о выпуске" Description="Описание изменений, внесенных в этот выпуск пакета; часто используется в пользовательском интерфейсе, например на вкладке &quot;Обновления&quot; диспетчера пакетов Visual Studio, вместо описания пакета." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147242" Category="General" />
  <DynamicEnumProperty Name="NeutralLanguage" DisplayName="Сборка на нейтральном языке" EnumProvider="NeutralLanguageEnumProvider" MultipleValuesAllowed="False" Category="General" />
  <StringProperty Name="AssemblyVersion" DisplayName="Версия сборки" Category="General" />
  <StringProperty Name="FileVersion" DisplayName="Версия файла" Category="General" />
  <!-- TODO add help URL? -->
  <EnumProperty Name="PackageLicenseKind" DisplayName="Лицензия пакета" Description="Укажите лицензию для пакета проекта." Category="License">
    <EnumProperty.DataSource>
      <DataSource Persistence="ProjectFileWithInterception" HasConfigurationCondition="False" />
    </EnumProperty.DataSource>
    <EnumValue Name="None" DisplayName="Нет" />
    <EnumValue Name="Expression" DisplayName="Выражение лицензии SPDX" />
    <EnumValue Name="File" DisplayName="Внедренный файл" />
  </EnumProperty>
  <StringProperty Name="PackageLicenseExpression" DisplayName="Выражение лицензии" Description="Выражение лицензии SPDX, которое часто отображается в таких пользовательских интерфейсах, как nuget.org." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147239" Category="License">
    <StringProperty.Metadata>
      <NameValuePair Name="DependsOn" Value="Package::PackageLicenseKind" />
      <NameValuePair Name="VisibilityCondition">
        <NameValuePair.Value>(eq "Expression" (evaluated "Package" "PackageLicenseKind"))</NameValuePair.Value>
      </NameValuePair>
    </StringProperty.Metadata>
  </StringProperty>
  <!-- TODO add a fwlink for this action URL -->
  <StringProperty Name="ReadAboutSpdxExpressions" DisplayName="Сведения о выражениях лицензии SPDX" Category="License">
    <StringProperty.DataSource>
      <DataSource PersistedName="ReadAboutSpdxExpressions" Persistence="ProjectFileWithInterception" HasConfigurationCondition="False" />
    </StringProperty.DataSource>
    <StringProperty.ValueEditors>
      <ValueEditor EditorType="LinkAction">
        <ValueEditor.Metadata>
          <NameValuePair Name="Action" Value="URL" />
          <NameValuePair Name="URL" Value="https://spdx.org/licenses/" />
        </ValueEditor.Metadata>
      </ValueEditor>
    </StringProperty.ValueEditors>
    <StringProperty.Metadata>
      <NameValuePair Name="VisibilityCondition">
        <NameValuePair.Value>(eq "Expression" (evaluated "Package" "PackageLicenseKind"))</NameValuePair.Value>
      </NameValuePair>
    </StringProperty.Metadata>
  </StringProperty>
  <StringProperty Name="PackageLicenseFile" DisplayName="Файл лицензии" HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147239" Category="License" Subtype="file">
    <StringProperty.Metadata>
      <NameValuePair Name="DependsOn" Value="Package::PackageLicenseKind" />
      <NameValuePair Name="VisibilityCondition">
        <NameValuePair.Value>(eq "File" (evaluated "Package" "PackageLicenseKind"))</NameValuePair.Value>
      </NameValuePair>
    </StringProperty.Metadata>
  </StringProperty>
  <BoolProperty Name="PackageRequireLicenseAcceptance" DisplayName="Требовать принятия условий лицензии" Description="Предлагать пользователю принять лицензию при установке этого пакета." Category="License">
    <BoolProperty.Metadata>
      <NameValuePair Name="DependsOn" Value="Package::PackageLicenseKind" />
      <NameValuePair Name="VisibilityCondition">
        <NameValuePair.Value>(ne "None" (evaluated "Package" "PackageLicenseKind"))</NameValuePair.Value>
      </NameValuePair>
    </BoolProperty.Metadata>
  </BoolProperty>
</Rule>