Sha256: dd6229dbcb16c9440da9c2e65a49044ca9fe479fd6dd203a1dc04b71b31aebf1

Contents?: true

Size: 696 Bytes

Versions: 7

Compression:

Stored size: 696 Bytes

Contents

# frozen_string_literal: true

require "dry/monads"
require "pathname"

module Milestoner
  module Configuration
    module Transformers
      module URI
        Tracker = lambda do |content, key = :tracker_uri|
          owner, name, domain, uri = content.values_at :project_owner,
                                                       :project_name,
                                                       :tracker_domain,
                                                       key

          return Dry::Monads::Success content unless uri

          content[key] = format uri, domain:, owner:, name:, id: "%<id>s"
          Dry::Monads::Success content
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
milestoner-17.6.0 lib/milestoner/configuration/transformers/uri/tracker.rb
milestoner-17.5.0 lib/milestoner/configuration/transformers/uri/tracker.rb
milestoner-17.4.0 lib/milestoner/configuration/transformers/uri/tracker.rb
milestoner-17.3.0 lib/milestoner/configuration/transformers/uri/tracker.rb
milestoner-17.2.0 lib/milestoner/configuration/transformers/uri/tracker.rb
milestoner-17.1.0 lib/milestoner/configuration/transformers/uri/tracker.rb
milestoner-17.0.0 lib/milestoner/configuration/transformers/uri/tracker.rb