diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/graphql/types/packages/metadata_type.rb | 4 | ||||
-rw-r--r-- | app/graphql/types/packages/nuget/metadatum_type.rb | 19 | ||||
-rw-r--r-- | app/graphql/types/packages/package_type.rb | 2 | ||||
-rw-r--r-- | app/helpers/ci/pipelines_helper.rb | 3 | ||||
-rw-r--r-- | app/policies/packages/nuget/metadatum_policy.rb | 8 |
5 files changed, 33 insertions, 3 deletions
diff --git a/app/graphql/types/packages/metadata_type.rb b/app/graphql/types/packages/metadata_type.rb index b439adf3767..94880cb9b22 100644 --- a/app/graphql/types/packages/metadata_type.rb +++ b/app/graphql/types/packages/metadata_type.rb @@ -6,7 +6,7 @@ module Types graphql_name 'PackageMetadata' description 'Represents metadata associated with a Package' - possible_types ::Types::Packages::Composer::MetadatumType, ::Types::Packages::Conan::MetadatumType, ::Types::Packages::Maven::MetadatumType + possible_types ::Types::Packages::Composer::MetadatumType, ::Types::Packages::Conan::MetadatumType, ::Types::Packages::Maven::MetadatumType, ::Types::Packages::Nuget::MetadatumType def self.resolve_type(object, context) case object @@ -16,6 +16,8 @@ module Types ::Types::Packages::Conan::MetadatumType when ::Packages::Maven::Metadatum ::Types::Packages::Maven::MetadatumType + when ::Packages::Nuget::Metadatum + ::Types::Packages::Nuget::MetadatumType else # NOTE: This method must be kept in sync with `PackageWithoutVersionsType#metadata`, # which must never produce data that this discriminator cannot handle. diff --git a/app/graphql/types/packages/nuget/metadatum_type.rb b/app/graphql/types/packages/nuget/metadatum_type.rb new file mode 100644 index 00000000000..63fae2fb197 --- /dev/null +++ b/app/graphql/types/packages/nuget/metadatum_type.rb @@ -0,0 +1,19 @@ +# frozen_string_literal: true + +module Types + module Packages + module Nuget + class MetadatumType < BaseObject + graphql_name 'NugetMetadata' + description 'Nuget metadata' + + authorize :read_package + + field :id, ::Types::GlobalIDType[::Packages::Nuget::Metadatum], null: false, description: 'ID of the metadatum.' + field :license_url, GraphQL::STRING_TYPE, null: false, description: 'License URL of the Nuget package.' + field :project_url, GraphQL::STRING_TYPE, null: false, description: 'Project URL of the Nuget package.' + field :icon_url, GraphQL::STRING_TYPE, null: false, description: 'Icon URL of the Nuget package.' + end + end + end +end diff --git a/app/graphql/types/packages/package_type.rb b/app/graphql/types/packages/package_type.rb index 659af4a7057..b349b655fa5 100644 --- a/app/graphql/types/packages/package_type.rb +++ b/app/graphql/types/packages/package_type.rb @@ -47,6 +47,8 @@ module Types object.conan_metadatum when 'maven' object.maven_metadatum + when 'nuget' + object.nuget_metadatum else nil end diff --git a/app/helpers/ci/pipelines_helper.rb b/app/helpers/ci/pipelines_helper.rb index cabb43f45fd..f42cd53ae3a 100644 --- a/app/helpers/ci/pipelines_helper.rb +++ b/app/helpers/ci/pipelines_helper.rb @@ -50,10 +50,9 @@ module Ci { name: 'Gradle', logo: image_path('illustrations/logos/gradle.svg') }, { name: 'Grails', logo: image_path('illustrations/logos/grails.svg') }, { name: 'dotNET', logo: image_path('illustrations/logos/dotnet.svg') }, - { name: 'Rails', logo: image_path('illustrations/logos/rails.svg') }, { name: 'Julia', logo: image_path('illustrations/logos/julia.svg') }, { name: 'Laravel', logo: image_path('illustrations/logos/laravel.svg') }, - { name: 'Latex', logo: image_path('illustrations/logos/latex.svg') }, + { name: 'LaTeX', logo: image_path('illustrations/logos/latex.svg') }, { name: 'Maven', logo: image_path('illustrations/logos/maven.svg') }, { name: 'Mono', logo: image_path('illustrations/logos/mono.svg') }, { name: 'Nodejs', logo: image_path('illustrations/logos/node_js.svg') }, diff --git a/app/policies/packages/nuget/metadatum_policy.rb b/app/policies/packages/nuget/metadatum_policy.rb new file mode 100644 index 00000000000..cdf1283c11a --- /dev/null +++ b/app/policies/packages/nuget/metadatum_policy.rb @@ -0,0 +1,8 @@ +# frozen_string_literal: true +module Packages + module Nuget + class MetadatumPolicy < BasePolicy + delegate { @subject.package } + end + end +end |