Sha256: bbb29ff6fac33ec02aa0f4c2cd81051119898379875b68189126d88fc4666c7e

Contents?: true

Size: 1.12 KB

Versions: 52

Compression:

Stored size: 1.12 KB

Contents

# frozen_string_literal: true

module Decidim
  module Core
    # This interface represents a coauthorable object.
    module CoauthorableInterface
      include Decidim::Api::Types::BaseInterface
      description "An interface that can be used in coauthorable objects."

      field :authors_count, Integer,
            method: :coauthorships_count,
            description: "The total amount of co-authors that contributed to the entity. Note that this field may include also non-user authors like meetings or the organization",
            null: true

      field :author, Decidim::Core::AuthorInterface,
            description: "The resource author. Note that this can be null on official proposals or meeting-proposals",
            null: true

      def author
        author = object.creator_identity
        author if author.is_a?(Decidim::User) || author.is_a?(Decidim::UserGroup)
      end

      field :authors, [Decidim::Core::AuthorInterface, { null: true }],
            method: :user_identities,
            description: "The resource co-authors. Include only users or groups of users",
            null: false
    end
  end
end

Version data entries

52 entries across 52 versions & 1 rubygems

Version Path
decidim-core-0.29.2 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.28.5 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.29.1 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.28.4 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.27.9 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.29.0 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.28.3 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.27.8 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.29.0.rc4 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.29.0.rc3 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.29.0.rc2 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.29.0.rc1 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.28.2 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.27.7 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.28.1 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.27.6 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.26.10 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.26.9 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.28.0 lib/decidim/api/interfaces/coauthorable_interface.rb
decidim-core-0.27.5 lib/decidim/api/interfaces/coauthorable_interface.rb