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

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

  expose :last_commit do |tree|
    request.project.repository.last_commit_for_path(tree.commit_id, tree.path)
  end

  expose :icon do |tree|
    IconsHelper.file_type_icon_class('folder', tree.mode, tree.name)
  end

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