summaryrefslogtreecommitdiff
path: root/app/serializers/blob_entity.rb
blob: 38e82ac93d41bc370aa9653f772455dccaebf50c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class BlobEntity < Grape::Entity
  include RequestAwareEntity

  expose :id, :path, :name, :mode

  expose :last_commit do |blob|
    request.project.repository.last_commit_for_path_lazy(blob.commit_id, blob.path)
  end

  expose :icon do |blob|
    IconsHelper.file_type_icon_class('file', blob.mode, blob.name)
  end

  expose :url do |blob|
    project_blob_path(request.project, File.join(request.ref, blob.path))
  end
end