Class: ImageOptim::Runner
- Inherits:
-
Object
- Object
- ImageOptim::Runner
- Defined in:
- lib/image_optim/runner.rb
Defined Under Namespace
Modules: Space
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(args, options) ⇒ Runner
constructor
A new instance of Runner.
- #run! ⇒ Object
- #warnings? ⇒ Boolean
Constructor Details
#initialize(args, options) ⇒ Runner
Returns a new instance of Runner.
40 41 42 43 44 45 46 |
# File 'lib/image_optim/runner.rb', line 40 def initialize(args, ) raise 'specify paths to optimize' if args.empty? = HashHelpers.deep_symbolise_keys() @recursive = .delete(:recursive) @image_optim = ImageOptim.new() @files = find_files(args) end |
Class Method Details
.run!(args, options) ⇒ Object
67 68 69 |
# File 'lib/image_optim/runner.rb', line 67 def self.run!(args, ) new(args, ).run! end |
Instance Method Details
#run! ⇒ Object
48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/image_optim/runner.rb', line 48 def run! unless @files.empty? lines, original_sizes, optimized_sizes = @image_optim.optimize_images!(@files.with_progress('optimizing')) do |original, optimized| original_size = optimized ? optimized.original_size : original.size optimized_size = optimized ? optimized.size : original.size ["#{size_percent(original_size, optimized_size)} #{original}", original_size, optimized_size] end.transpose puts lines, "Total: #{size_percent(original_sizes.inject(:+), optimized_sizes.inject(:+))}" end !warnings? end |
#warnings? ⇒ Boolean
63 64 65 |
# File 'lib/image_optim/runner.rb', line 63 def warnings? !!@warnings end |