summaryrefslogtreecommitdiff
path: root/lib/license/management/report/v1_1.rb
blob: 1186e2a7112d4eddf191019bc896528d43790d74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# frozen_string_literal: true

module License
  module Management
    module Report
      class V1_1 < V1
        def to_h
          { version: '1.1' }.merge(super)
        end

        private

        def map_from_dependency(dependency)
          licenses = dependency.licenses.sort_by(&:name).map do |license|
            item = license_data(license)
            {
              name: item['name'],
              url: item.fetch('url', '')
            }
          end

          { licenses: licenses }.merge(super)
        end
      end
    end
  end
end