lib/rubysmith/builders/documentation/license.rb in rubysmith-0.16.1 vs lib/rubysmith/builders/documentation/license.rb in rubysmith-1.0.0
- old
+ new
@@ -1,36 +1,41 @@
# frozen_string_literal: true
require "tocer"
+require "refinements/structs"
module Rubysmith
module Builders
module Documentation
# Builds project skeleton LICENSE documentation.
class License
+ using Refinements::Structs
+
def self.call(...) = new(...).call
def initialize configuration, builder: Builder
@configuration = configuration
@builder = builder
end
def call
- return unless configuration.build_license
+ return configuration unless configuration.build_license
- configuration.with(template_path: "%project_name%/LICENSE-#{license}.#{kind}.erb")
+ configuration.merge(template_path: "%project_name%/LICENSE-#{license}.#{kind}.erb")
.then do |updated_configuration|
builder.call(updated_configuration).render.rename "LICENSE.#{kind}"
end
+
+ configuration
end
private
attr_reader :configuration, :builder
- def kind = configuration.documentation_format || "md"
+ def kind = configuration.documentation_format
- def license = configuration.documentation_license || "mit"
+ def license = configuration.license_name
end
end
end
end